Python使用folium excel绘制point

下面我来详细讲解“Python使用folium excel绘制point”的完整攻略。

准备工作

使用pip安装foliumpandasopenpyxl三个库,它们分别用于在地图上标记点、读取Excel文件和操作Excel文件。

pip install folium pandas openpyxl

示例一:从Excel文件中读取数据并绘制标记点

首先,我们需要创建一个空白的地图对象,并设置初始的中心点坐标和缩放级别。这里使用的是中国地图,中心点坐标为[35, 105],缩放级别为4

import folium

m = folium.Map(location=[35, 105], zoom_start=4)

接下来,我们使用pandas读取Excel文件中的数据,可以通过pd.read_excel()方法来读取,其中sheet_name参数是用于指定要读取的工作表名称,header参数是用于指定包含列名称的行号,usecols参数是用于指定要读取的列号。

import pandas as pd

df = pd.read_excel('data.xlsx', sheet_name='Sheet1', header=0, usecols=[0, 1, 2])

现在我们已经读取了Excel文件中的数据,接下来就是在地图上绘制标记点。这里使用的是Marker对象来绘制点,其中location参数是用于指定点的经纬度坐标,popup参数是用于指定鼠标悬停在点上时显示的文本信息。

for _, row in df.iterrows():
    folium.Marker(location=[row['latitude'], row['longitude']], popup=row['name']).add_to(m)

最后,展示地图并保存结果。

m.save('map.html')

示例二:从代码中构建数据并绘制标记点

除了从Excel文件中读取数据以外,我们还可以直接从代码中构建数据,并在地图上绘制标记点。首先,我们需要定义一个列表,其中包含多个字典,每个字典表示一个点的信息。

data = [
    {'name': '北京', 'latitude': 39.9042, 'longitude': 116.4074},
    {'name': '上海', 'latitude': 31.2304, 'longitude': 121.4737},
    {'name': '广州', 'latitude': 23.1291, 'longitude': 113.2644},
    {'name': '深圳', 'latitude': 22.5431, 'longitude': 114.0579},
    {'name': '杭州', 'latitude': 30.2741, 'longitude': 120.1551},
]

接下来,和示例一类似,我们创建一个空白的地图对象,设置中心点坐标和缩放级别。

m = folium.Map(location=[30, 110], zoom_start=5)

再创建一堆标记点,并将它们添加到地图上。

for point in data:
    folium.Marker(location=[point['latitude'], point['longitude']], popup=point['name']).add_to(m)

最后,展示地图并保存结果。

m.save('map.html')

这样,我们就完成了从Excel文件或代码中读取数据并在地图上绘制标记点的操作。完整代码可以参考下面的示例:

import folium
import pandas as pd

# 读取Excel文件
df = pd.read_excel('data.xlsx', sheet_name='Sheet1', header=0, usecols=[0, 1, 2])

# 构造数据
data = [
    {'name': '北京', 'latitude': 39.9042, 'longitude': 116.4074},
    {'name': '上海', 'latitude': 31.2304, 'longitude': 121.4737},
    {'name': '广州', 'latitude': 23.1291, 'longitude': 113.2644},
    {'name': '深圳', 'latitude': 22.5431, 'longitude': 114.0579},
    {'name': '杭州', 'latitude': 30.2741, 'longitude': 120.1551},
]

# 创建地图对象
m = folium.Map(location=[30, 110], zoom_start=5)

# 绘制标记点
for _, row in df.iterrows():
    folium.Marker(location=[row['latitude'], row['longitude']], popup=row['name']).add_to(m)

for point in data:
    folium.Marker(location=[point['latitude'], point['longitude']], popup=point['name']).add_to(m)

# 展示地图
m.save('map.html')

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python使用folium excel绘制point - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python3中常见配置文件写法汇总

    给你详细讲解一下“Python3中常见配置文件写法汇总”的完整攻略。 配置文件写法汇总 在某些项目中,可能需要使用配置文件来存储一些固定数据,例如数据库连接信息、调试模式的开关等。下面做一个汇总,介绍一下Python3中常见的配置文件写法。 1. INI文件格式写法 INI文件格式是Windows配置文件的标准格式,以[节名]开始,然后接若干行键值对。Pyt…

    python 2023年6月3日
    00
  • Python 打印双端队列

    【问题标题】:Python Printing a DequePython 打印双端队列 【发布时间】:2023-04-02 22:50:02 【问题描述】: 我有一个完整的 Deque Array 类,如下所示: from collections import deque import ctypes class dequeArray: DEFAULT_CAP…

    Python开发 2023年4月8日
    00
  • Python数据结构与算法中的栈详解(1)

    当我写“Python数据结构与算法中的栈详解(1)”这篇文章时,我遵循了以下几个步骤: 1. 确定目标读者 在为网站编写文章之前,我们应该确定我们想要吸引的目标读者是谁。因此,在为这篇文章的编写时,我明确了以下目标读者:熟悉Python编程语言的初学者和具有Python编程经验的开发人员,他们想要深入了解Python中的栈数据结构。 2. 介绍栈数据结构的基…

    python 2023年5月14日
    00
  • Python对Excel进行处理的实操指南

    下面是对于“Python对Excel进行处理的实操指南”的完整实例教程,其中包含两条示例说明。 Python对Excel进行处理的实操指南 介绍 Python是一种功能强大的编程语言,可以进行各种数据处理和分析。在金融、商业、教育等行业,Excel是一种常用的数据处理工具。Python可以方便地对Excel进行读取、处理、分析和输出。 本文将介绍如何使用Py…

    python 2023年5月13日
    00
  • Python基础异常处理梳理总结

    当我们在编写Python程序时,常常会遇到各种各样的异常情况,比如语法错误、类型错误、文件不存在等。这时就需要使用异常处理机制来处理这些异常,从而保证程序的正确性和稳定性。本文将对Python基础异常处理做一个总结,包括异常的基本语法、常用的异常类型、自定义异常以及异常处理语句try-except、try-except-else和try-except-fin…

    python 2023年5月13日
    00
  • python实现定时提取实时日志程序

    下面就来详细讲解“python实现定时提取实时日志程序”的完整攻略。 1. 确定日志文件路径及格式 首先需要确定要提取日志的文件路径及格式,例如 /var/log/nginx/access.log。还需要了解日志文件的格式,例如 nginx 的 access.log 格式为: $remote_addr – $remote_user [$time_local]…

    python 2023年6月2日
    00
  • Python常用时间操作总结【取得当前时间、时间函数、应用等】

    Python常用时间操作总结 在Python中,常见的时间操作有取得当前时间、时间函数、应用等。 取得当前时间 使用datetime模块可以方便地取得当前时间。我们可以通过以下代码来获取当前时间: import datetime now = datetime.datetime.now() print("当前时间为:", now) 代码解析…

    python 2023年6月2日
    00
  • 利用pip安装python第三方库的4种方法

    下面是“利用pip安装python第三方库的4种方法”的详细攻略: 方法一:直接使用pip安装 使用pip安装第三方库是最常用的方法,只需要在命令行输入以下命令即可: pip install package_name 其中,package_name是要安装的第三方库的名称。例如,我们要安装常用第三方库numpy,可以执行以下命令: pip install n…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部