微立顶科技

新闻资讯

创新 服务 价值

  空间数据可视化神器keplergl

发布日期:2022/7/4 12:13:35      浏览量:

零基础python入门教程:python666.cn

大家好,欢迎来到 Crossin的编程教室 !

今天给大家介绍一款超赞的空间(地理)数据可视化神器:keplergl

最近偶然发现的这个神器是Uber完全开源的,也是Uber内部进行空间数据可视化的默认工具。

通过其面向Python开放的接口包keplergl,我们可以在jupyter notebook中通过书写Python代码的方式传入多种格式的数据,在其嵌入notebook的交互窗口中使用其内建的多种丰富的空间数据可视化功能。下面有3个主要的学习地址:

1、官网地址:

https://kepler.gl/

2、jupyter notebook使用手册地址:

https://github.com/keplergl/kepler.gl/tree/master/docs/keplergl-jupyter#geojson

3、案例地址:

https://github.com/keplergl/kepler.gl/tree/master/bindings/kepler.gl-jupyter/notebooks


安装

keplergl 的安装是非常简单的,我是一次性装成功的。如果报错,可以网上搜索一下报错信息寻找解决方法,或去教室论坛上讨论。

pip install keplergl
效果图

一大波惊艳图形来了:


打开网易新闻 查看更多图片 

案例入门import pandas as pdimport geopandas as gpd

from keplergl import KeplerGl

# 创建对象
kep1 = KeplerGl(height=600)
# 激活对象,加载到jupyter notebook中
kep1

可以看到,运行了基本代码后在Jupyter中直接就产生了内置的图形,图形本身也是动态的;暗黑色的背景也很有风格:

添加数据

keplergl默认是可以添加3种形式的数据:

csv

GeoJSON

DataFrame

csv格式

本地目录下有一份csv数据:china.csv,记录的是我国各个省份的经纬度:

with open("china.csv","r") as f:
csv_data = f.read()

# add_data添加数据
kep1.add_data(data=csv_data, name="csv_kep")
kep1

DataFrame格式china = pd.read_csv("china.csv")
kep1.add_data(data=china, name="dataframe_kep")
kep1
GeoJson格式url = ’http://eric.clst.org/assets/wiki/uploads/Stuff/gz_2010_us_040_00_500k.json’
country_gdf = gpd.read_file(url) # geopandas读取json文件

kep1.add_data(data=country_gdf, name="state")
kep1

自定义图形

Keplergl的自定义方法:关键性按钮。进去了之后就可以自定义操作

配置的保存及复用

实例化kep的配置可以保存在后面的实例对象中复用:

1、保存:

# 保存成文件
with open(’config1.py’,’w’) as f:
f.write(’config={}’.format(kep1.config))

# 运行:魔法命令%run
%run config1.py

2、复用

kep2 = KeplerGl(height=400,
data={"layer1":df},
config=kep1.config # kep1的配置
kep2
保存图形

1、简约版本,主要是文件名

kep1.save_to_html(file_name="first_kep.html")

2、完整版本:文件名、配置、数据、可读性

# 4个参数
kep1.save_to_html(file_name="first_kep.html",
data={’data_1’:china},
config=config,
read_only=True
在线操作

上面显示的操作都是在no‍tebook中完成的,我们也可以直接在线操作:

https://kepler.gl/demo

作者:Peter



  业务实施流程

需求调研 →

团队组建和动员 →

数据初始化 →

调试完善 →

解决方案和选型 →

硬件网络部署 →

系统部署试运行 →

系统正式上线 →

合作协议

系统开发/整合

制作文档和员工培训

售后服务

马上咨询: 如果您有业务方面的问题或者需求,欢迎您咨询!我们带来的不仅仅是技术,还有行业经验积累。
QQ: 39764417/308460098     Phone: 13 9800 1 9844 / 135 6887 9550     联系人:石先生/雷先生