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 相关文章推荐
Django的数据模型访问多对多键值的方法
Jul 21 Python
python高手之路python处理excel文件(方法汇总)
Jan 07 Python
Python argv用法详解
Jan 08 Python
Python paramiko模块的使用示例
Apr 11 Python
使用pandas对矢量化数据进行替换处理的方法
Apr 11 Python
Tornado Web Server框架编写简易Python服务器
Jul 28 Python
浅谈python新式类和旧式类区别
Apr 26 Python
从列表或字典创建Pandas的DataFrame对象的方法
Jul 06 Python
Python的垃圾回收机制详解
Aug 28 Python
python 项目目录结构设置
Feb 14 Python
Python修改列表值问题解决方案
Mar 06 Python
python和JavaScript哪个容易上手
Jun 23 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
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
win2003服务器使用WPS的COM组件的一些问题解决方法
2012/01/11 PHP
php实现的太平洋时间和北京时间互转的自定义函数分享
2014/08/19 PHP
php基于session实现数据库交互的类实例
2015/08/03 PHP
php 修改上传文件大小限制实例详解
2016/10/23 PHP
PHP基于反射机制实现插件的可插拔设计详解
2016/11/10 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
js 点击按钮弹出另一页,选择值后,返回到当前页
2010/05/26 Javascript
js判断背景图片是否加载成功使用img的width实现
2013/05/29 Javascript
javascript中Math.random()使用详解
2015/04/15 Javascript
使用JavaScript实现连续滚动字幕效果的方法
2015/07/07 Javascript
ajax与json 获取数据并在前台使用简单实例
2017/01/19 Javascript
javascript设计模式之中介者模式学习笔记
2017/02/15 Javascript
基于angular实现模拟微信小程序swiper组件
2017/06/11 Javascript
Vue封装Swiper实现图片轮播效果
2018/02/06 Javascript
微信小程序实现获取小程序码和二维码java接口开发
2019/03/29 Javascript
使用Layui搭建后台管理界面的操作方法
2019/09/20 Javascript
JS深入学习之数组对象排序操作示例
2020/05/01 Javascript
微信小程序实现天气预报功能(附源码)
2020/12/10 Javascript
使用cx_freeze把python打包exe示例
2014/01/24 Python
python3中的md5加密实例
2018/05/29 Python
Python使用sorted对字典的key或value排序
2018/11/15 Python
Python实现定时自动关闭的tkinter窗口方法
2019/02/16 Python
python学生管理系统学习笔记
2019/03/19 Python
查看python安装路径及pip安装的包列表及路径
2019/04/03 Python
Python大数据之使用lxml库解析html网页文件示例
2019/11/16 Python
浅谈python处理json和redis hash的坑
2020/07/16 Python
pandas处理csv文件的方法步骤
2020/10/16 Python
matplotlib更改窗口图标的方法示例
2021/02/03 Python
古驰英国官网:GUCCI英国
2020/03/07 全球购物
优秀党员转正的自我评价
2013/10/06 职场文书
生育关怀行动实施方案
2014/03/26 职场文书
庆祝国庆节演讲稿2014
2014/09/19 职场文书
营销计划书范文
2015/01/17 职场文书
Jupyter notebook 不自动弹出网页的解决方案
2021/05/21 Python
SQL Server中搜索特定的对象
2022/05/25 SQL Server