Python利用folium实现地图可视化

 更新时间:2021年05月23日 15:19:02   作者:Harris-H  
Folium是建立在Python生态系统的数据整理(Datawrangling)能力和Leaflet.js库的映射能力之上的开源库。这篇文章主要给大家介绍了关于如何Python利用folium实现地图可视化的相关资料,需要的朋友可以参考下

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

在这里插入图片描述

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地图可视化folium内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python中使用插入排序算法的简单分析与代码示例

    Python中使用插入排序算法的简单分析与代码示例

    这篇文章主要介绍了Python使用插入排序算法的简单分析与代码示例,插入算法的平均时间复杂度为O(n^2),需要的朋友可以参考下
    2016-05-05
  • 利用python实现简单的情感分析实例教程

    利用python实现简单的情感分析实例教程

    商品评论挖掘、电影推荐、股市预测……情感分析大有用武之地,下面这篇文章主要给大家介绍了关于利用python实现简单的情感分析的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • python自动统计zabbix系统监控覆盖率的示例代码

    python自动统计zabbix系统监控覆盖率的示例代码

    这篇文章主要介绍了python自动统计zabbix系统监控覆盖率的示例代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)

    Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)

    这篇文章主要介绍了Django2.1集成xadmin管理后台所遇到的错误集锦(填坑),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • opencv 阈值分割的具体使用

    opencv 阈值分割的具体使用

    这篇文章主要介绍了opencv 阈值分割的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Python使用pymongo模块操作MongoDB的方法示例

    Python使用pymongo模块操作MongoDB的方法示例

    这篇文章主要介绍了Python使用pymongo模块操作MongoDB的方法,结合实例形式分析了Python基于pymongo模块连接MongoDB数据库以及增删改查与日志记录相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • Python Asyncio 库之同步原语常用函数详解

    Python Asyncio 库之同步原语常用函数详解

    这篇文章主要为大家介绍了Python Asyncio 库之同步原语常用函数详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • 使用keras实现孪生网络中的权值共享教程

    使用keras实现孪生网络中的权值共享教程

    这篇文章主要介绍了使用keras实现孪生网络中的权值共享教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python sort 自定义函数排序问题

    Python sort 自定义函数排序问题

    这篇文章主要介绍了Python sort 自定义函数排序问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • 基于DATAFRAME中元素的读取与修改方法

    基于DATAFRAME中元素的读取与修改方法

    今天小编就为大家分享一篇基于DATAFRAME中元素的读取与修改方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06

最新评论