原作者:Abdishakur
原文地址:https://towardsdatascience.com/best-libraries-for-geospatial-data-visualisation-in-python-d23834173b35
編譯:費弗里
譯文來源:Python大資料分析
地理空間資料無處不在:在這次新冠肺炎大流行中,我們見識到了各種地理空間資料可視化工具制作出的各種風格的地圖,而對Python的使用者來說,有幾個非常強大的庫可以幫助我們進行地理空間資料可視化,
通過本文,我將給大家分享Python生態中最好用的6地理空間資料可視化工具以及它們的一些案例,
1.PyViz/HoloViz(Geoviews, Datashader, HvPlot)
Holoviz維護的幾個庫有用你可能需要的所有資料可視化功能,涵蓋了儀表盤和互動式可視化,Geoviews就是其中專注于地理空間資料可視化的庫,提供了靈活方便的地理空間資料可視化功能,
GeoViews是一個輔助探索和可視化地理資料、氣象類資料以及海洋資料等與天氣、大氣、遙感密切相關的資料集的Python庫
Geoviews的API提供直觀的界面和通用的語法,使得利用它制作可視化作品非常容易,譬如下面的例子中與geopandas配合作業:
import geoviews as gv
imporg geopandas as gpd
gv.Polygons(gpd.read_file(gpd.datasets.get_path('naturalearth_lowres')), vdims=['pop_est', ('name', 'Country')]).opts(
tools=['hover'], width=600, projection=crs.Robinson()
)
除此之外,PyViz生態中還提供了其他的用于處理地理空間資料的庫,譬如HvPlot、Datashader等,以及用于制作儀表盤app的Panel庫,
2.Folium
Folium是著名的web地圖可視化庫Leaflet.js向Python開放的介面,配合大量有意思的插件制作出互動式的在線地圖,
Folium入門起來非常簡單,你可以通過呼叫Folium.Map迅速的看到基礎地圖,也可以根據你的資料對其疊加不同圖層,下面是Folium效果示例:
3.Plotly/Plotly Express
Plotly以及它的高級API庫Plotly Express針對地理空間資料可視化有著拓展功能,雖然暫不支持與geopandas的互動,但已經足夠制作出很多型別的地圖,并且隨著2019年Plotly Express的推出,用Plotly制作地圖變得越來越容易,
并且基于Dash,可以很容易地制作出web應用,幫助你向更多的人展示你的可視化作品:
4.KeplerGl
kepler.gl for jupyter是大規模地理空間資料可視化絕佳的工具,它將世界范圍內廣泛被使用的由Uber開源的kepler.gl嵌入到jupyter的界面中,
只需要簡單的幾行代碼,就可以在jupyter notebok或jupyter lab中渲染出界面:
5.IpyLeaflet
類似folium,IpyLeaflet是另一個基于Leaflet的可視化庫,可以用來制作在線互動式地圖,其與folium相比對jupyter的支持更加豐富,可以結合ipywidgets中的眾多網頁控制元件實作更復雜更豐富的網頁互動功能:
6.geopandas
壓軸的當然要留給我們Python GIS界的中流砥柱——geopandas了,不同于前面所介紹的幾個庫,geopandas賦予了使用者無限自由的操縱矢量資料并將其可視化的能力,配合matplotlib的豐富功能,使得我們可以充分發揮想象力,做出極具設計感的可視化作品:
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/134886.html
標籤:其他
