Python利用folium实现地图可视化


Posted in Python onMay 23, 2021

folium的简介

用Python处理数据,然后用Folium将它在Leaflet地图上进行可视化。Folium能够将通过Python处理后的数据轻松地在交互式的Leaflet地图上进行可视化展示。它不单单可以在地图上展示数据的分布图,还可以使用Vincent/Vega在地图上加以标记。

这个开源库中有许多来自OpenStreetMap、MapQuest Open、MapQuestOpen Aerial、Mapbox和Stamen的内建地图元件,而且支持使用Mapbox或Cloudmade的API密钥来定制个性化的地图元件。Folium支持GeoJSON和TopoJSON两种文件格式的叠加,也可以将数据连接到这两种文件格式的叠加层,最后可使用color-brewer配色方案创建分布图。

Folium可以让你用Python强大生态系统来处理数据,然后用Leaflet地图来展示。Folium内置一些来自OpenStreetMap、MapQuest Open、MapQuest Open Aerial、Mapbox和Stamen的地图元件(tilesets),并且支持用Mapbox或者Cloudmade API keys来自定义地图元件。Folium支持GeoJSON和TopJSON叠加(overlays),绑定数据来创造一个分级统计图(Choropleth map)。但是,Folium库绘制热点图的时候,需要联网才可显示。

1.安装folium模块

pip install folium

2.安装jupyter

pip install jupyter

便于查看地图

3.查看世界地图

import folium
m = folium.Map() # 显示地图
m

Python利用folium实现地图可视化

4.查看中国地图

import folium
m = folium.Map(location=[30,100],zoom_start=3)
m
  • location 经纬度,list 或者 tuple 格式,顺序为 latitude(纬度), longitude(经度)
  • zoom_start 缩放值,默认为 10,值越大比例尺越小,地图放大级别越大
  • tiles 显示样式,默认*‘OpenStreetMap'*,也就是开启街道显示
  • crs 地理坐标参考系统,默认为"EPSG3857"

5.武汉市地图

m = folium.Map(location=[30.6,114.4],zoom_start=8) # 武汉市地图

Python利用folium实现地图可视化

修改样式

m = folium.Map(location=[30.6,114.4],zoom_start=8,tiles='Stamen Toner')

Python利用folium实现地图可视化

m = folium.Map(location=[30.6,114.4],zoom_start=8,tiles='Stamen Terrain')

Python利用folium实现地图可视化

6.添加标记

import folium
wuhan_map = folium.Map(location=[30.6,114.4],zoom_start=8)

# 添加标记
folium.Marker(
    location=[30.6,114.3], # 位置
    popup='Wu Han City Marker', # 鼠标点击 弹出的说明
    icon=folium.Icon(icon='cloud') # 图标样式
).add_to(wuhan_map)

folium.Marker(
    location=[30.6,114.33],
    popup='Timberline Lodge',
    icon=folium.Icon(color='green')
).add_to(wuhan_map)

folium.Marker(
    location=[30.6,114.35],
    popup='Some Other Location',
    icon=folium.Icon(color='red', icon='info-sign')
).add_to(wuhan_map)
folium.Circle(  # 添加圆
    radius=200,
    location=(30.6,114.32),
    popup='The Waterfront',
    color='crimson',
    fill=False,
).add_to(wuhan_map)

folium.CircleMarker(    #添加蓝色圆环
    location=(30.6,114.37),
    radius=50,
    popup='Laurelhurst Park',
    color='#3186cc',
    fill=True,
    fill_color='#3186cc'
).add_to(wuhan_map)

# 获取点的经纬度
# wuhan_map.add_child(folium.LatLngPopup())

# 动态添加标签
wuhan_map.add_child(folium.ClickForMarker(popup='Waypoint'))

Python利用folium实现地图可视化

7.查找武汉科技大学

import foliumposition = [30.4415, 114.2628] # 武科大的经纬度school_mp = folium.Map(location=position,zoom_start=15)school_mp

Python利用folium实现地图可视化

8.未解决

​ 弹出pop_up显示图片不会。

9.参考文章

传送门1

经纬度查询api

到此这篇关于Python利用folium实现地图可视化的文章就介绍到这了,更多相关Python地图可视化folium内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python 多进程通信模块的简单实现
Feb 20 Python
详解分布式任务队列Celery使用说明
Nov 29 Python
对python中数据集划分函数StratifiedShuffleSplit的使用详解
Dec 11 Python
如何在django里上传csv文件并进行入库处理的方法
Jan 02 Python
python覆盖写入,追加写入的实例
Jun 26 Python
pandas的to_datetime时间转换使用及学习心得
Aug 11 Python
Python谱减法语音降噪实例
Dec 18 Python
Pytorch 神经网络—自定义数据集上实现教程
Jan 07 Python
如何搭建pytorch环境的方法步骤
May 06 Python
python编写一个会算账的脚本的示例代码
Jun 02 Python
最新Python idle下载、安装与使用教程图文详解
Nov 28 Python
python scrapy简单模拟登录的代码分析
Jul 21 Python
python爬虫之selenium库的安装及使用教程
教你利用python实现企业微信发送消息
python基础之文件处理知识总结
May 23 #Python
Python绘制地图神器folium的新人入门指南
Python关于OS文件目录处理的实例分享
May 23 #Python
python引入其他文件夹下的py文件具体方法
Python 解决空列表.append() 输出为None的问题
May 23 #Python
You might like
收听困难?教您超简便短波广播抗干扰方法!
2021/03/01 无线电
全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
2011/01/06 PHP
对text数据类型不支持代码页转换 从: 1252 到: 936
2011/04/23 PHP
PHP两种去掉数组重复值的方法比较
2014/06/19 PHP
php中Snoopy类用法实例
2015/06/19 PHP
php基于PDO实现功能强大的MYSQL封装类实例
2017/02/27 PHP
PHP图片水印类的封装
2017/07/06 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
2018/03/15 PHP
JavaScript和ActionScript的交互实现代码
2010/08/01 Javascript
JavaScript常用脚本汇总(三)
2015/03/04 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
js实现精确到秒的倒计时效果
2016/05/29 Javascript
jQuery简单验证上传文件大小及类型的方法
2016/06/02 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
jquery动态遍历Json对象的属性和值的方法
2016/07/27 Javascript
jQuery实现ajax的叠加和停止(终止ajax请求)
2016/08/08 Javascript
vue在index.html中引入静态文件不生效问题及解决方法
2019/04/29 Javascript
基于layui的table插件进行复选框联动功能的实现方法
2019/09/19 Javascript
opencv改变imshow窗口大小,窗口位置的方法
2018/04/02 Python
Python中偏函数用法示例
2018/06/07 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
django的ORM操作 删除和编辑实现详解
2019/07/24 Python
Django项目之Elasticsearch搜索引擎的实例
2019/08/21 Python
django 实现celery动态设置周期任务执行时间
2019/11/19 Python
Python任务自动化工具tox使用教程
2020/03/17 Python
python实现PDF中表格转化为Excel的方法
2020/06/16 Python
python boto和boto3操作bucket的示例
2020/10/30 Python
详解python中的异常和文件读写
2021/01/03 Python
来自全球大都市的高级街头服饰:Pegador
2018/01/03 全球购物
英国最大的正宗复古足球衫制造商和零售商:TOFFS
2018/06/21 全球购物
2014年党务公开工作总结
2014/12/09 职场文书
服装区域经理岗位职责
2015/04/10 职场文书
JS Object构造函数之Object.freeze
2021/04/28 Javascript
如何使用JavaScript策略模式校验表单
2021/04/29 Javascript
MySQL 查询速度慢的原因
2021/05/25 MySQL
手把手教你使用TensorFlow2实现RNN
2021/07/15 Python