本文示例代碼及數據已上傳至個人
Github
倉庫https://github.com/CNFeffery/DataScienceStudyNoteshtml
Kepler.gl
做爲一款強大的開源地理信息數據可視化工具,能夠幫助咱們輕鬆製做針對大規模矢量數據的可視化做品,從而輔助數據分析工做。python
Kepler.gl
製做常規地圖很是簡單方便,稍微摸索一下儀表盤界面就能夠get到用法,但有些特殊的地圖則須要額外對數據進行處理或使用Kepler.gl
中的一些隱藏功能,譬如以前寫過的(數據科學學習手札85)Python+Kepler.gl輕鬆製做酷炫路徑動畫中介紹過的動態路徑地圖。本文將要介紹的時間輪播地圖也是一種比較特殊的地圖,下面咱們就將結合實際例子進行介紹。git
咱們以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()
須要注意咱們的數據中除了必要的經緯度點信息以外,包含了tpep_pickup_datetime
與tpep_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
首先刪除掉側邊欄Kepler.gl
自動識別建立出的所有圖層,咱們本身手動建立所需的圖層,以OD線爲例:htm
接着根據數據自己屬性進行適當的視覺元素的調整,這部分看我的喜愛,具體步驟略過:blog
接下來到最重要的步驟,打開左上角的篩選面板:
點擊Add Filter,選擇想要做爲時間輪播依據信息的字段:
地圖右下角隨即出現時間輪播部件:
能夠在時間輪播部件中設置時間窗口跨度、播放速度等,下面是我製做出的效果,由於動圖錄制幀數不宜過高,實際比動圖中要流暢不少,你也能夠本身自由探索:
對於其餘格式的數據譬如GeoJSON
,一樣適用,只須要屬性表中必定存在時間類型信息便可,以上就是本文的所有內容,歡迎在評論區與咱們進行討論。