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自动化测试之从命令行运行测试用例with verbosity
Sep 28 Python
Python找出最小的K个数实例代码
Jan 04 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
Feb 08 Python
Python二进制文件读取并转换为浮点数详解
Jun 25 Python
Python环境Pillow( PIL )图像处理工具使用解析
Sep 12 Python
Python中*args和**kwargs的区别详解
Sep 17 Python
简单了解python数组的基本操作
Nov 26 Python
pytorch实现mnist分类的示例讲解
Jan 10 Python
Python字符串中删除特定字符的方法
Jan 15 Python
python MultipartEncoder传输zip文件实例
Apr 07 Python
python中复数的共轭复数知识点总结
Dec 06 Python
浅析pandas随机排列与随机抽样
Jan 22 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 7.1新特性的汇总介绍
2016/12/16 PHP
php时间戳转换代码详解
2019/08/04 PHP
PHP页面静态化――纯静态与伪静态用法详解
2020/06/05 PHP
JavaScript使用cookie
2007/02/02 Javascript
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
2010/02/07 Javascript
javaScript 删除字符串空格多种方法小结
2012/10/24 Javascript
js计算精度问题小结
2013/04/22 Javascript
关于js中for in的缺陷浅析
2013/12/02 Javascript
在AngularJS中使用AJAX的方法
2015/06/17 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
2015/12/04 Javascript
JavaScript版经典游戏之扫雷游戏完整示例【附demo源码下载】
2016/12/12 Javascript
Canvas + JavaScript 制作图片粒子效果
2017/02/08 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
利用Node.js+Koa框架实现前后端交互的方法
2017/02/27 Javascript
基于vue2.0动态组件及render详解
2018/03/17 Javascript
JQuery判断radio单选框是否选中并获取值的方法
2019/01/17 jQuery
jQuery内容选择器与表单选择器实例分析
2019/06/28 jQuery
初试vue-cli使用HBuilderx打包app的坑
2019/07/17 Javascript
小程序两种滚动公告栏的实现方法
2019/09/17 Javascript
JavaScript修改注册表实例代码
2020/01/05 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
2020/10/28 Javascript
Python获取央视节目单的实现代码
2015/07/25 Python
python实现数据导出到excel的示例--普通格式
2018/05/03 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
PyQt5的安装配置过程,将ui文件转为py文件后显示窗口的实例
2019/06/19 Python
python的re模块使用方法详解
2019/07/26 Python
python将三维数组展开成二维数组的实现
2019/11/30 Python
Python+OpenCV+图片旋转并用原底色填充新四角的例子
2019/12/12 Python
python 利用jieba.analyse进行 关键词提取
2020/12/17 Python
linux面试题参考答案(10)
2016/10/26 面试题
《灯光》教学反思
2014/02/08 职场文书
工作岗位说明书模板
2014/05/09 职场文书
节约能源标语
2014/06/17 职场文书
论文致谢词范文
2015/05/14 职场文书
办公室管理规章制度
2015/08/04 职场文书
交通安全宣传标语(100条)
2019/08/22 职场文书