Python之所以這麼流行,是因為它不僅能夠應用於科技領域,還能用來做許多其他學科的研究工具,繪製地圖便是其功能之一。
1.安裝如果你還沒有安裝Python,請見這篇文章:超詳細Python安裝指南
為了能夠順利開展本專案,你需要先安裝以下依賴,在cmd或Terminal中輸入以下命令:
pip install numpypip install matplotlib
為了使用 mpl_toolkits, 單純安裝matplotlib是不夠的,我們還需要單獨安裝basemap,如果你已經安裝了Anaconda,那這一步就非常好辦,輸入以下命令安裝即可:
conda install basemap
如果沒有的話,就稍微麻煩一點:
1.安裝geos: pip install geos2.根據你的Python版本下載basemaphttp://www.lfd.uci.edu/~gohlke/pythonlibs/#basemap注意cp後面的數字是Python的版本。(在頁面上按ctrl+F,輸入basemap快速定位)3.在 cmd 下進入該檔案的目錄,執行
pip install basemap‑1.2.1‑cp37‑cp37m‑win_amd64.whl
2.簡單地圖讓我們開始繪製一個地球,中心指向中國:
這裡的重點在於Basemap,指定好你想要放置的中心。
效果還不錯哦,不僅如此,它其實不單單只是一張影象,它還是一個功能齊全的matplot畫布。這也就意味著,你能夠在上面畫線!讓我們放大地圖,進入中國區域,然後標記出深圳的位置:
不要用藍底圖了,看得不是很清晰,我們換成浮雕型:
可以很明顯地看到山區、丘陵等地理樣貌。你還可以根據你的需要,針對某幾個城市做連線或者繪製某些經緯度之間的區域。別忘了,這可是matplotlib可編輯的畫布。
3.世界地圖接下來,我們將上述的世界地圖展開成帶經緯線的平面圖形。
嗯,有點那個味了哈。甚至可以自己去打印出來給小孩子學習地理知識了。
但是如果他想學習地理,整個世界的範圍好像有點大?我們先讓他學習世界著名景點的位置吧?
放大檢視:
這樣,只需要往locations裡類似地加入某個地點的經緯度,就能在地圖上展示出來了,你還能自定義地畫兩個地點之間的連線,或者是重點放大某個區域。總而言之,你想幹的,基本上基於Matplotlib都可以做得到。