Python地圖可視化三大祕密武器


Python地圖可視化三大秘密武器


Python地圖可視化庫有大家熟知的pyecharts、plotly、folium,還有稍低調的bokeh、basemap、geopandas,也是地圖可視化不可忽視的利器。

這次就來介紹下這三位低調的python地圖可視化工具。

首先介紹下bokeh

bokeh擅長製作交互式圖表,當然在地圖展示方面也毫不遜色。

Python地圖可視化三大秘密武器

Python地圖可視化三大秘密武器

示例代碼地址:https://automating-gis-processes.github.io/2017/lessons/L5/interactive-map-bokeh.html

再來個小視頻展示一下:


視頻代碼地址:https://towardsdatascience.com/a-complete-guide-to-an-interactive-geographical-map-using-python-f4c5197e23e0

Bokeh支持google地圖、geojson數據的地理可視化展示,關鍵是可以動態交互。

Bokeh官網提供了詳細的地圖可視化方案,感興趣的把示例代碼拉出來跑一跑。

學習網站:https://docs.bokeh.org/en/lates

basemap-專業地圖可視化庫

可以毫不誇張的說,basemap是python地圖可視化最牛逼的第三方庫。

basemap基於matplotlib開發,所以它具有創建數據可視化的所有功能,必須配合matplotlib使用。

只需要幾行代碼就可以畫一張世界地圖:







<code>from mpl_toolkits.basemap import Basemapimport matplotlib.pyplot as pltmap = Basemap()map.drawcoastlines()plt.show()plt.savefig('test.png')/<code>
Python地圖可視化三大秘密武器











<code>from mpl_toolkits.basemap import Basemapimport matplotlib.pyplot as pltmap = Basemap(projection='ortho',               lat_0=0, lon_0=0)#Fill the globe with a blue color map.drawmapboundary(fill_color='aqua')#Fill the continents with the land colormap.fillcontinents(color='coral',lake_color='aqua')map.drawcoastlines()plt.show()/<code>
Python地圖可視化三大秘密武器

由於basemap無所不能的繪圖能力,你還可以畫:

風勾圖

Python地圖可視化三大秘密武器

輪廓圖

Python地圖可視化三大秘密武器

填充輪廓圖

Python地圖可視化三大秘密武器

偽彩色圖

Python地圖可視化三大秘密武器

地理標記圖

Python地圖可視化三大秘密武器

矢量場流線圖

Python地圖可視化三大秘密武器

實景地圖

Python地圖可視化三大秘密武器

Python地圖可視化三大秘密武器

多子圖地圖

Python地圖可視化三大秘密武器

3D地圖

Python地圖可視化三大秘密武器

示例代碼及basemap學習網站:https://basemaptutorial.readthedocs.io/en/latest/

注:由於basemap僅支持Py2,matplotlib會暫停對basemap的維護,cartopy取代basemap成為matplotlib陣營裡地圖可視化的領頭兵。

最後說說geopandas

geopandas,顧名思義是基於pandas的地圖可視化工具,所以它對地理數據的處理非常方便。

推薦大家將geopandas作為地理信息數據處理的主要工具。

之前寫過一個geopandas的入門教程,供大家參考:

geopandas,用python畫地圖原來這麼簡單!

配合使用matplotlib,很簡單的代碼就可以畫出漂亮的地圖:

Python地圖可視化三大秘密武器


分享到:


相關文章: