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下的Mysql模块MySQLdb安装详解
Apr 09 Python
详细解读Python中解析XML数据的方法
Oct 15 Python
Python2与python3中 for 循环语句基础与实例分析
Nov 20 Python
Python中的探索性数据分析(功能式)
Dec 22 Python
详解python3中zipfile模块用法
Jun 18 Python
Python打包方法Pyinstaller的使用
Oct 09 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
Oct 21 Python
Python下opencv图像阈值处理的使用笔记
Aug 04 Python
python自动结束mysql慢查询会话的实例代码
Oct 27 Python
Pytorch实现的手写数字mnist识别功能完整示例
Dec 13 Python
python类共享变量操作
Sep 03 Python
Pytorch DataLoader shuffle验证方式
Jun 02 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
PHP图片验证码制作实现分享(全)
2012/05/10 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
2017/06/06 PHP
YII2自动登录Cookie总是失效的解决方法
2017/06/28 PHP
php压缩文件夹最新版
2018/07/18 PHP
Packer 3.0 JS压缩及混淆工具 下载
2007/05/03 Javascript
jQuery实现动画效果的实例代码
2013/05/07 Javascript
jQuery截取指定长度字符串的实现原理及代码
2014/07/01 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
在HTML中插入JavaScript代码的示例
2015/06/03 Javascript
详细解读JavaScript编程中的Promise使用
2015/07/27 Javascript
JS弹出对话框实现方法(三种方式)
2015/12/18 Javascript
js css3实现图片拖拽效果
2017/03/04 Javascript
JS简单生成随机数(随机密码)的方法
2017/05/11 Javascript
vue-router两种模式区别及使用注意事项详解
2019/08/01 Javascript
vue单页应用的内存泄露定位和修复问题小结
2019/08/02 Javascript
layui table设置某一行的字体颜色方法
2019/09/05 Javascript
vue项目中监听手机物理返回键的实现
2020/01/18 Javascript
JS 逻辑判断不要只知道用 if-else 和 switch条件判断(小技巧)
2020/05/27 Javascript
浅谈在vue-cli3项目中解决动态引入图片img404的问题
2020/08/04 Javascript
[57:50]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第二局
2016/03/05 DOTA
[01:38]完美世界DOTA2联赛PWL S3 集锦第四期
2020/12/21 DOTA
使用Python设置tmpfs来加速项目的教程
2015/04/17 Python
python 求1-100之间的奇数或者偶数之和的实例
2019/06/11 Python
pytest中文文档之编写断言
2019/09/12 Python
python的列表List求均值和中位数实例
2020/03/03 Python
Python计算指定日期是今年的第几天(三种方法)
2020/03/26 Python
利用Python如何实时检测自身内存占用
2020/05/09 Python
jenkins+python自动化测试持续集成教程
2020/05/12 Python
python绘图模块之利用turtle画图
2021/02/12 Python
HTML5标签大全
2016/11/23 HTML / CSS
英国领先的奢侈品零售商之一:CRUISE
2016/12/02 全球购物
台湾网友喜爱的综合型网路购物商城:Yahoo! 奇摩购物中心
2018/03/10 全球购物
《颐和园》教学反思
2014/02/26 职场文书
安全保证书怎么写
2015/02/28 职场文书
2015年度个人思想工作总结
2015/04/08 职场文书
8个JS的reduce使用实例和reduce操作方式
2021/10/05 Javascript