1、简介git
kepler.gl是由Uber开发的进行空间数据可视化的开源工具,是Uber内部进行空间数据可视化的默认工具,经过其面向Python开放的接口包keplergl,咱们能够在jupyter notebook中经过书写Python代码的方式传入多种格式的数据,在其嵌入notebook的交互窗口中使用其内建的多种丰富的空间数据可视化功能,本文就将针对在jupyter notebook中使用keplergl的基本用法进行介绍。github
2、利用keplergl调用kepler.gljson
2.1 从一个小例子开始工具
首先咱们须要在Python中安装kepler.gl的Python接口包keplergl,只须要简单的pip install keplergl便可,若是安装过程当中遇到与geopandas、fiona相关的错误,只须要重装gdal模块便可,在完成安装以后,经过下面的小例子来认识kepler.gl的使用方式:spa
from keplergl import KeplerGl #建立一个KeplerGl对象 map1 = KeplerGl(height=500) #激活KeplerGl对象到jupyter的窗口中 map1
在jupyter notebook中运行完上述代码后会出现kepler.gl的操做窗口,以下图所示:3d
点击左上角的小箭头即可以展开一个功能丰富的窗体:code
第一个按钮下包含了跟图层元素相关的众多功能,要使用这些功能须要导入数据,利用add_data()方法传入,它有两个参数,data用于传入包含要传入图层的全部数据信息(具体的格式下一章节中会作具体介绍),name传入字符串类型的变量,用于给当前图层命名,默认为'unnamed',下面咱们以一个简单的飞线图的示例来初步认识利用kepler.gl进行可视化的基本流程:对象
使用到的数据是随机生成的,除经纬度和地名外其它字段真实以外其余字段无心义,保存在datatable.csv中,具体以下:blog
在以前已经初始化的map1的基础上,将数据表读入并利用add_data()方法传入做为图层layer1:接口
import pandas as pd df1 = pd.read_csv('datatable.csv',encoding='ANSI') map1.add_data(df1,name='layer1')
接着kepler.gl窗体便接收到响应转变以下:
skpler.gl会对csv格式的文件的字段类型进行推断,必定要在表明经纬度信息的字段名称中加上对应的lat、lng部分,不然导入数据后并不能自动识别为可能的图形对象,skpler.gl中主要用手动的方式来调整显示哪些对象、以什么格式显示,经过一番简单的手动调整咱们获得下面的图像:
要显示什么对象隐藏什么对象能够所有依靠手动在菜单栏中调整对应的属性,也能够经过json格式传入config参数来实现,咱们提取上面可视化结果下map1的config参数,再在初始化一个新的窗体时直接用字典传入参数data为图层layer1对应的df1,参数config为map1.config:
#直接在初始化的时候传入对应图层数据和map1的参数config map2 = KeplerGl(height=700,data={'layer1':df1},config=map1.config) map2
能够看到经过这种方式咱们直接一步就还原了以前完成的可视化结果,经过本小节中这个简单的小例子,你应该对jupyter notebook中如何调用kepler.gl有了一个初步的认识,接下来咱们在不一样的例子中总结传入不一样格式数据进行可视化的方法。
2.2 绘制GeoJson类型文件
geojson文件是kepler.gl中使用起来最方便的一种数据格式,由于它格式清楚,kepler.gl能够直接推理出须要执行的可视化方案,下面这个例子使用到kepler.gl所属的github下notebooks文件下的geojson-data.json,这个geojson文件记录了位于巴黎的一个多边形的矢量信息:
import keplergl with open('geojson-data.json', 'r') as f: geojson = f.read() map_1 = keplergl.KeplerGl(height=600,data={'geojson':geojson}) map_1
skpler.gl直接绘制出咱们须要的多边形,,相似的你能够根据本身的须要创造出更多的可视化做品,下面的几个美观的可视化做品来自kepler.gl的官网:
以上就是本文的所有内容,若有笔误望指出!