0

0

Python地图可视化怎么做_Folium库结合经纬度生成交互地图

P粉602998670

P粉602998670

发布时间:2026-03-13 10:14:32

|

629人浏览过

|

来源于php中文网

原创

folium.Map需指定location=[lat,lon]和zoom_start=12–14,推荐tiles="CartoDB positron";标记须确保经纬度为float且调用.add_to();GeoJSON需过滤null几何体并确保WGS84坐标系;HTML须通过本地服务器而非双击打开。

python地图可视化怎么做_folium库结合经纬度生成交互地图

怎么用 folium.Map 初始化一个能点开看的底图

关键不是“画出来”,而是让地图加载成功且可交互。默认初始化不指定 locationzoom_start,生成的 HTML 打开后可能空白或卡在海洋中央。

实操建议:

立即学习Python免费学习笔记(深入)”;

  • location 必须是 [lat, lon] 形式(不是字符串),比如北京中心: [39.9042, 116.4074]
  • zoom_start 别设太高(如 18),移动端容易卡;城市级展示用 12–14 更稳妥
  • 国内用户记得换底图源,否则默认 OpenStreetMap 在部分地区加载慢甚至失败,加 tiles="CartoDB positron"tiles="https://tile.openstreetmap.org/{z}/{x}/{y}.png" 更可靠

往地图上加标记为什么点不动、不显示或者全叠在一起

常见错误是直接传入 pandas DataFrame 的 latlon 列但没做类型校验,或循环里反复调用 folium.Marker 却忘了 .add_to(map_obj)

实操建议:

立即学习Python免费学习笔记(深入)”;

  • 确保经纬度是 float 类型,df['lat'].dtypefloat64,不是 object(常见于空值转成字符串)
  • 每建一个 folium.Marker,必须显式调用 .add_to(m),不能只写 folium.Marker(...) 就完事
  • 如果所有标记都落在同一个点,大概率是读取 CSV 时列名写错,比如把 "lng" 写成 "long" 导致该列全为 NaN,folium 默认填 0
  • 想加弹窗文字?用 popup=folium.Popup("内容", parse_html=True),纯字符串会自动转义,中文可能乱码

folium.GeoJson 加载行政区划边界总报错 ValueError: Unhandled type: <class></class>

这基本等于 GeoJSON 数据里有 null 几何体(比如某条记录的 "geometry" 字段是 null),folium.GeoJson 默认不跳过,直接崩。

MyMap AI
MyMap AI

使用AI将想法转化为图表

下载

实操建议:

立即学习Python免费学习笔记(深入)”;

  • 先用 Python 预处理数据:用 geopandas.read_file() 读,再 gdf = gdf.dropna(subset=['geometry']),然后导出干净 JSON:gdf.to_json()
  • 如果只能硬啃原始 JSON,加参数 style_function=lambda x: {'fillColor': '#blue'} if x['geometry'] else {},但更推荐源头过滤
  • 注意坐标系:folium 只认 WGS84(EPSG:4326),如果你的 GeoJSON 是 GCJ-02(高德/腾讯偏移)或 BD-09(百度),标记位置会整体偏移几十公里,必须先纠偏再喂给 folium

保存和打开交互地图后为啥缩放/点击失效,或者提示 “This page is accessing resources from unauthenticated sources”

本质是浏览器安全策略拦截了本地文件协议(file://)下的 JS 资源加载。folium 生成的 HTML 依赖 CDN 上的 Leaflet.js,而现代浏览器对本地打开的 HTML 默认禁用跨域请求。

实操建议:

立即学习Python免费学习笔记(深入)”;

  • 别双击直接打开 HTML,用 Python 启一个最小服务器:python -m http.server 8000,然后访问 http://localhost:8000/your_map.html
  • 或者用 map_obj.save("map.html") 后,通过 VS Code 插件 “Live Server” 点击右下角 “Go Live”
  • 如果必须发给他人离线使用,改用 folium.Map(..., tiles=None) + 手动把 Leaflet.js 下载下来,用 plugins.JsMarkerCluster 等插件前也得同步本地化 JS/CSS,工作量陡增——不如接受“得跑个轻量服务”这个事实

真正麻烦的从来不是画点,是让每个标记在不同设备、不同网络、不同坐标系下都稳稳落在该落的地方。稍一松懈,偏移、空白、报错就全来了。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

457

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

549

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

337

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

82

2025.09.10

Python 时间序列分析与预测
Python 时间序列分析与预测

本专题专注讲解 Python 在时间序列数据处理与预测建模中的实战技巧,涵盖时间索引处理、周期性与趋势分解、平稳性检测、ARIMA/SARIMA 模型构建、预测误差评估,以及基于实际业务场景的时间序列项目实操,帮助学习者掌握从数据预处理到模型预测的完整时序分析能力。

80

2025.12.04

Python 数据清洗与预处理实战
Python 数据清洗与预处理实战

本专题系统讲解 Python 在数据清洗与预处理中的核心技术,包括使用 Pandas 进行缺失值处理、异常值检测、数据格式化、特征工程与数据转换,结合 NumPy 高效处理大规模数据。通过实战案例,帮助学习者掌握 如何处理混乱、不完整数据,为后续数据分析与机器学习模型训练打下坚实基础。

32

2026.01.31

css中float用法
css中float用法

css中float属性允许元素脱离文档流并沿其父元素边缘排列,用于创建并排列、对齐文本图像、浮动菜单边栏和重叠元素。想了解更多float的相关内容,可以阅读本专题下面的文章。

595

2024.04.28

C++中int、float和double的区别
C++中int、float和double的区别

本专题整合了c++中int和double的区别,阅读专题下面的文章了解更多详细内容。

108

2025.10.23

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

25

2026.03.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.5万人学习

Django 教程
Django 教程

共28课时 | 5万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号