博主最近發現了python中一個好玩的包叫basemap,使用這個包可以繪制地圖。值得說一下的是,basemap還沒有pip檢索,因此不能直接使用pip install basemap,來安裝這個包。所以需要自己把下面兩個包自行下載,然后在該目錄下使用pip安裝。
pyproj-1.9.5.1-cp36-cp36m-win_amd64.whl
basemap-1.1.0-cp36-cp36m-win_amd64.whl
先上個效果圖,可以發現這個工具包還是很強大的,下面介紹下怎么在地圖上標注出經緯度的地點。
整個畫圖流程分為兩部分,第一部分是繪制一個世界地圖,代碼如下:
from mpl_toolkits.basemap import Basemap
m = Basemap() # 實例化一個map
m.drawcoastlines() # 畫海岸線
m.drawmapboundary(fill_color='white')
m.fillcontinents(color='white',lake_color='white') # 畫大洲,顏色填充為白色
parallels = np.arange(-90., 90., 10.) # 這兩行畫緯度,范圍為[-90,90]間隔為10
m.drawparallels(parallels,labels=[False, True, True, False])
meridians = np.arange(-180., 180., 20.) # 這兩行畫經度,范圍為[-180,180]間隔為10
m.drawmeridians(meridians,labels=[True, False, False, True])
第二部分是標注出經緯度所在的地點,這部分比第一步簡單多了,直接用scatter()方法就可以了,代碼如下:
lon, lat = m(lon, lat) # lon, lat為給定的經緯度,可以使單個的,也可以是列表
m.scatter(lon, lat, s=100)# 標注出所在的點,s為點的大小,還可以選擇點的性狀和顏色等屬性
plt.show()
以上這篇Python 給定的經緯度標注在地圖上的實現方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持我們。
本文標題: Python 給定的經緯度標注在地圖上的實現方法
本文地址: http://www.cppcns.com/jiaoben/python/264682.html