(数据科学学习手札90)Python+Kepler.gl轻松制做时间轮播地图

本文示例代码及数据已上传至个人Github仓库https://github.com/CNFeffery/DataScienceStudyNoteshtml

1 简介

  Kepler.gl做为一款强大的开源地理信息数据可视化工具,能够帮助咱们轻松制做针对大规模矢量数据的可视化做品,从而辅助数据分析工做。python

  Kepler.gl制做常规地图很是简单方便,稍微摸索一下仪表盘界面就能够get到用法,但有些特殊的地图则须要额外对数据进行处理或使用Kepler.gl中的一些隐藏功能,譬如以前写过的(数据科学学习手札85)Python+Kepler.gl轻松制做酷炫路径动画中介绍过的动态路径地图。本文将要介绍的时间轮播地图也是一种比较特殊的地图,下面咱们就将结合实际例子进行介绍。git

2 Python+Kepler.gl制做时间轮播地图

2.1 实例:Uber出行乘客上下车信息

  咱们以Uber官方提供的2015年某日纽约乘客上下车数据为例,对应文章开头Github仓库中的data.csv,关于Python+Kepler.gl的环境配置能够回顾(数据科学学习手札85)Python+Kepler.gl轻松制做酷炫路径动画中的相关内容。github

  首先咱们读入data.csv数据:工具

import pandas as pd
from keplergl import KeplerGl

raw = pd.read_csv('data.csv')
raw.head()
图1

  须要注意咱们的数据中除了必要的经纬度点信息以外,包含了tpep_pickup_datetimetpep_dropoff_datetime两列日期格式的数据,这是绘制日期轮播地图的关键,即咱们的数据集中针对每行数据记录必须有与之相对应的时间信息。学习

  数据准备完毕,使用下列代码向外部导出Kepler.gl对应的html文件,由于全部视觉元素咱们都单独手动调整,这里只须要将目标数据嵌入html文件便可:动画

map1 = KeplerGl(height=800, data={'layer1': raw}) # 生成Kepler.gl网页
map1.save_to_html(file_name='时间轮播地图示例1.html', data={'layer1': raw}) # 导出网页

  在外部打开前面导出的html文件,初始界面如图2:code

图2

  首先删除掉侧边栏Kepler.gl自动识别建立出的所有图层,咱们本身手动建立所需的图层,以OD线为例:htm

图3
图4

  接着根据数据自己属性进行适当的视觉元素的调整,这部分看我的喜爱,具体步骤略过:blog

图5

  接下来到最重要的步骤,打开左上角的筛选面板:

图6

  点击Add Filter,选择想要做为时间轮播依据信息的字段:

图7

  地图右下角随即出现时间轮播部件:

图8

  能够在时间轮播部件中设置时间窗口跨度、播放速度等,下面是我制做出的效果,由于动图录制帧数不宜过高,实际比动图中要流畅不少,你也能够本身自由探索:

图9

  对于其余格式的数据譬如GeoJSON,一样适用,只须要属性表中必定存在时间类型信息便可,以上就是本文的所有内容,欢迎在评论区与咱们进行讨论。

相关文章
相关标签/搜索