新闻动态

Python实现地图可视化folium完整过程

发布日期:2022-04-02 13:24 | 文章来源:CSDN

Folium简介

Folium是一个基于leaflet.js的Python地图库,其中,Leaflet是一个非常轻的前端地图可视化库。即可以使用Python语言调用Leaflet的地图可视化能力。它不单单可以在地图上展示数据的分布图,还可以使用Vincent/Vega在地图上加以标记。Folium可以让你用Python强大生态系统来处理数据,然后用Leaflet地图来展示。

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

想通过 Python 绘制精美的地图?想在地图上自由的设置各种参数?想获得灵活的交互体验?这里就有一款Python 神包满足你:folium。

folium 建立在 Python 生态系统的数据应用能力和 Leaflet.js 库的映射能力之上,在Python中操作数据,然后通过 folium 在 Leaflet 地图中可视化。

folium 相比较于国内百度的 pyecharts 灵活性更强,能够自定义绘制区域,并且展现形式更加多样化。

附:官方文档,官方示例,本文 notebook ,完整代码及数据。

1.安装folium模块

pip install folium

2.安装jupyter

pip install jupyter

便于查看地图

3.查看世界地图

创建一个Jupyter Notebook 格式文件,便于查看地图

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

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) # 武汉市地图

修改样式

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

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


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'))

7.查找武汉科技大学

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

8.未解决

​ 弹出pop_up显示图片不会。

9.参考文章

传送门1

经纬度查询api

以上就是Python实现地图可视化folium的详细内容,更多关于Python地图可视化olium的资料请关注本站其它相关文章!

海外服务器租用

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

相关文章

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部