Categories
程式開發

用Python繪製地理圖


當您的數據包含地理信息時,豐富的地圖可視化可以為您理解數據和解釋分析結果的最終用戶提供重要價值。

用Python繪製地理圖 1

密謀

Plotly是一個著名的庫,用於在Python中創建交互式繪圖和儀表板。

安裝Plotly

用Python繪製地理圖 2

在命令提示符中運行這兩個命令,以在我們的本地計算機上安裝 plotly 和 cufflinks 及其所有軟件包。

Choropleth地圖

Choropleth地圖是流行的主題地圖,用於通過各種陰影圖案或預定地理區域(即國家/地區)上的符號表示統計數據。它們擅長利用數據輕鬆表示整個區域所需測量的可變性。

Choropleth地圖是如何工作的?

Choropleth Maps顯示與數據變量相關的彩色,陰影或圖案化的劃分的地理區域或區域。這提供了一種可視化地理區域內值的方法,該值可以顯示所顯示位置的變化或模式。

在Python中使用Choropleth

在這裡,我們將使用 2014年全球不同國家/地區的電力消耗數據集。 (https://github.com/ahmadbinshafiq/Geographical-Plotting—Python/blob/master/2014_World_Power_Consumption)

好的,讓我們開始吧。

導入庫

用Python繪製地理圖 3

在這裡, init_notebook_mode(connected = True) 將Javascript連接到我們的筆記本。

創建/解釋我們的DataFrame

用Python繪製地理圖 4

用Python繪製地理圖 5

在這裡,我們有3列,並且所有列都有219個非空條目。

用Python繪製地理圖 6

用Python繪製地理圖 7

將我們的數據編譯成字典

用Python繪製地理圖 8

type=”choropleth”:定義地圖的類型,即這種情況下的choropleth。 colorscale=”Viridis”:顯示一個顏色圖(f或更多顏色比例,請參閱 此處)。 location = df [‘Country’]:添加所有國家/地區的列表。 locationmode=”國家名稱”:因為我們在數據集中有國家名稱,所以我們將位置模式設置為’國家名稱’。 z:顯示每個狀態的功耗的整數值列表。 text = df [‘Country’]:將鼠標懸停在地圖上的每個狀態元素時顯示一個文本。在這種情況下,它是國家本身的名稱。 colorbar = {‘title’:’Power KWH’}:包含有關右側欄信息的字典。在這裡,顏色欄包含側邊欄的標題。

用Python繪製地理圖 9

佈局 -一個Geo對象,可用於控制 在其上繪製數據的基礎地圖的外觀 。

這是一本嵌套的字典,其中包含有關地圖/繪圖外觀的所有相關信息。

生成圖/圖

用Python繪製地理圖 10

用Python繪製地理圖 11

生成了“ 2014年世界電力消耗”的choropleth地圖,從上面可以看到,當每個國家/地區懸停在地圖上的每個元素上時,都會顯示其名稱和電力消耗(以kWh為單位) 。數據在一個特定區域中越集中,地圖上的顏色陰影越深。 “中國”的耗電量最大,因此其顏色最深。

密度圖

密度映射只是一種顯示點或線可能集中在給定區域中的方式。

在Python中使用密度圖

在這裡,我們將使用世界範圍 的地震及其震級數據集。

好的,讓我們開始吧。

用Python繪製地理圖 12

創建/解釋我們的DataFrame

用Python繪製地理圖 13

用Python繪製地理圖 14

在這裡,我們有4列,並且所有列都有23412個非空條目。

用Python繪製地理圖 15

用Python繪製地理圖 16

繪製數據

用Python繪製地理圖 17

lat=”Latitude”:獲取數據框的“緯度”列。 lon =’Longitude’:獲取數據框的經度列。 z:顯示地震震級的整數列表。 radius = 10:設置每個點的影響半徑。 center = dict(lat = 0,lon = 180):設置字典中地圖的中心點。 zoom = 0:設置地圖縮放級別。 mapbox_style=”stamen-terrain”:設置基本地圖樣式。在這裡,“雄蕊地形”是基本地圖樣式。 fig.show():顯示地圖。

地圖

用Python繪製地理圖 18

我們已經繪製了“地震及其烈度”的密度圖,從上面我們可以看到,它覆蓋了遭受地震破壞的所有領土,並且還顯示了當我們將鼠標懸停在上方時每個區域的地震烈度。

由於數據格式多種多樣,有時使用plotly進行地理繪圖可能會遇到一些挑戰,因此請參考該 備忘單, 了解所有類型的plotly plot語法。

用Python繪製地理圖 19

看完別走還有驚喜!

我精心整理了計算機/Python/機器學習/深度學習相關的2TB視頻課與書籍,價值1W元。關注微信公眾號“計算機與AI”,點擊下方菜單即可獲取網盤鏈接。