嗨,介绍一款地理数据可视化神器——keplergl

Python之王

共 2548字,需浏览 6分钟

 ·

2021-12-02 10:51

简介

keplergl是由Uber开源的一款地理数据可视化工具,通过keplergl我们可以在Jupyter notebook中使用,可视化效果如下图所示:

安装

官方文档:https://docs.kepler.gl/docs/keplergl-jupyter

  • 通过pip安装keplergl
pip install keplergl

  • 如果你使用MAC通过PIP安装而且notebook版本在5.3以上,可跳过此步:
jupyter nbextension install --py --sys-prefix keplergl # can be skipped for notebook 5.3 and above
jupyter nbextension enable --py --sys-prefix keplergl # can be skipped for notebook 5.3 and above

一个小例子

执行以下代码,会建立一个没数据空窗口,出现如下效果,那就恭喜你安装成功了~

from keplergl import KeplerGl

#创建一个KeplerGl对象
map_1 = KeplerGl(height=500)

#激活KeplerGl对象到jupyter的窗口中
map_1

添加数据

KeplerGl中支持三种格式的数据,分别是csv, GEOjsonDataFrame,下面以DataFrame为例;

首先我们通过Pandas读取数据:

import pandas as pd


df = pd.read_csv('rocket_launch_site_elevation_2019-10-27.csv')
df.head()

再新建一个KeplerGl,然后通过.add()添加我们刚刚读取的数据;在地图上就能看到我们刚刚添加的数据了~

#创建一个KeplerGl对象
map_2 = KeplerGl(height=600)

#激活KeplerGl对象到jupyter的窗口中
map_2

# 添加数据
map_2.add_data(name='rocket', data=df)

map_2

定制图表

pyecharts,matplotlib等库的配置方式不一样,在Kepler中你不需要写很多关于颜色,图表类型等等方面的配置代码,你只需要在窗口通过鼠标操作就好了,如下图所示:

获取配置

通过.config获取当前图表中的配置(包括你在窗口中的操作)~

map_2.config

当然这个配置也可以复用的其他图表上,如下代码~

#创建一个KeplerGl对象

# config读取配置
map_3 = KeplerGl(height=600, config=map_2.config)

#激活KeplerGl对象到jupyter的窗口中
map_3

# 添加数据
map_3.add_data(name='rocket', data=df)

map_3

导出图表

通过.save_to_html()导出会生成一个html文件,支持参数如下:

  • data:图表数据,如为空则会使用当前图表中的数据;-  config:图表配置,如为空则会使用图表中当前的配置;-  file_name: 导出文件名,默认keplergl_map.html -  read_only:如为True,导出的文件将不支持配置;
map_3.save_to_html(file_name='kepler_example.html')

通过浏览器打开刚刚保存的文件,就可以开始你的可视化之旅了~~

最后

简单使用下来,KeplerGL是一款上手非常容易的可视化工具,不需要你去写复杂的代码完成图表的配置,通过图形化界面就能作出非常好看的效果;如果你工作中刚好需要用到地理数据的可视化,KeplerGL是一款非常不错的选择~




Python“宝藏级”公众号【Python之王】专注于Python领域,会爬虫,数分,C++,tensorflow和Pytorch等等

近 2年共原创 100+ 篇技术文章。创作的精品文章系列有:

日常收集整理了一批不错的 Python 学习资料,有需要的小伙可以自行免费领取。

获取方式如下:公众号回复资料领取Python等系列笔记,项目,书籍,直接套上模板就可以用了。资料包含算法、python、算法小抄、力扣刷题手册和 C++ 等学习资料!


浏览 28
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报