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

 更新时间:2021年05月28日 09:58:18   作者:Harris-H  
Folium是一个基于leaflet.js的Python地图库,其中,Leaflet是一个非常轻的前端地图可视化库,本文重点给大家介绍Python实现地图可视化folium完整过程,感兴趣的朋友跟随小编一起看看吧

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的资料请关注脚本之家其它相关文章!

相关文章

  • Python基于pygame实现单机版五子棋对战

    Python基于pygame实现单机版五子棋对战

    这篇文章主要为大家详细介绍了Python基于pygame实现单机版五子棋对战,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • 为什么黑客都用python(123个黑客必备的Python工具)

    为什么黑客都用python(123个黑客必备的Python工具)

    python支持功能强大的黑客攻击模块,而且Python提供多种库,用于支持黑客攻击,Python提供了ctypes库, 借助它, 黑客可以访问Windows、OS X、Linux等系统提供 DLL与共享库,还有Python语言易学易用,这对黑客攻击而言是个巨大的优势。
    2020-01-01
  • Python实现队列的方法

    Python实现队列的方法

    这篇文章主要介绍了Python实现队列的方法,实例分析了Python实现队列的相关技巧,需要的朋友可以参考下
    2015-05-05
  • python使用pandas处理大数据节省内存技巧(推荐)

    python使用pandas处理大数据节省内存技巧(推荐)

    这篇文章主要介绍了python使用pandas处理大数据节省内存技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • python处理 yaml 时保持输入输出格式一致的问题记录

    python处理 yaml 时保持输入输出格式一致的问题记录

    这篇文章主要介绍了python处理 yaml 时保持输入输出格式一致的问题记录,要想保持顺序不变在dump时添加sort_keys=False,使yaml格式保持原来的排序,本文给大家介绍的非常详细,需要的朋友可以参考下
    2024-06-06
  • SQLite5-使用Python来读写数据库

    SQLite5-使用Python来读写数据库

    这篇文章主要介绍了SQLite5-使用Python来读写数据库,数据库的实际应用,通常需要与程序结合起来,通过程序来实现对数据库的访问和读写。本篇先介绍Python语言来调用SQLite数据库,想具体了解的小伙伴可以参考一下</P><P>
    2021-12-12
  • Python实现手写一个类似django的web框架示例

    Python实现手写一个类似django的web框架示例

    这篇文章主要介绍了Python实现手写一个类似django的web框架,结合具体实例形式分析了Python自定义简单控制器、URL路由、视图模型等功能,实现类似Django框架的web应用相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • 浅析Python中的绝对导入与相对导入

    浅析Python中的绝对导入与相对导入

    这篇文章主要为大家详细介绍了Python中的绝对导入与相对导入的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-03-03
  • 手把手教你搭建python+selenium自动化环境(图文)

    手把手教你搭建python+selenium自动化环境(图文)

    本文主要介绍了手把手教你搭建python+selenium自动化环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Python调用pyttsx3实现离线文字转语音的方式

    Python调用pyttsx3实现离线文字转语音的方式

    pyttsx3是 Python 中的文本到语音的离线转换库,本文给大家介绍Python调用pyttsx3实现离线文字转语音的方式,感兴趣的朋友一起看看吧
    2024-03-03

最新评论