You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Excel中的latitude/longitude数据在Python中绘制标记设施位置的地图?

用Python创建带标记的地图(新手友好方案)

首选工具:folium库

folium是基于Leaflet.js的Python地图库,语法简单、上手快,完全适配新手需求。

步骤1:安装folium

打开终端/命令行,运行安装命令:

pip install folium

步骤2:编写核心代码

假设你有如下格式的设施数据(可直接替换成你的真实数据):

# 示例数据:设施名称、纬度、经度
facilities = [
    ("社区医院", 39.9042, 116.4074),
    ("市民广场", 39.9139, 116.4074),
    ("购物中心", 39.9289, 116.4172)
]

然后编写地图生成代码:

import folium

# 计算所有设施的平均经纬度,作为地图中心
center_lat = sum(f[1] for f in facilities)/len(facilities)
center_lon = sum(f[2] for f in facilities)/len(facilities)
# 创建基础地图,设置初始缩放级别
m = folium.Map(location=[center_lat, center_lon], zoom_start=13)

# 遍历设施列表,逐个添加标记
for name, lat, lon in facilities:
    folium.Marker(
        location=[lat, lon],
        popup=name,  # 点击标记显示的设施名称
        tooltip=name  # 鼠标悬停时显示的设施名称
    ).add_to(m)

# 将地图保存为HTML文件,直接打开即可查看交互式地图
m.save("facility_map.html")

运行代码后,会生成一个HTML文件,打开它就能看到带标记的交互式地图,支持缩放、点击查看设施名称等操作。

其他可选工具:plotly.express

如果想要更美观的交互式效果,可以试试plotly,安装命令:

pip install plotly

示例代码:

import plotly.express as px
import pandas as pd

# 将设施数据转换为DataFrame格式
df = pd.DataFrame(facilities, columns=["名称", "纬度", "经度"])

# 生成交互式地图
fig = px.scatter_mapbox(
    df,
    lat="纬度",
    lon="经度",
    hover_name="名称",
    zoom=13,
    mapbox_style="open-street-map"
)

# 直接在浏览器中显示地图
fig.show()

新手教程资源推荐

  • folium官方文档:包含详细的入门指南、API说明和大量实操示例,从基础标记到自定义图标、热力图等功能都有覆盖,适合边看边练。
  • Python数据可视化入门教程:很多面向新手的教程会专门讲解folium的使用,跟着步骤操作能快速掌握核心用法。
  • 技术社区入门帖:搜索“folium 新手教程”,能找到很多带代码示例的实操文章,可解决常见的入门问题。

内容的提问来源于stack exchange,提问作者hummus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 03:36:21