Basemap是Matplotlib的一個子包,負責地圖繪製。昨天的推送對如何繪製風向圖進行了描述,本文再次利用該包簡單介紹如何繪製海洋及海冰溫度彩色圖示,該圖常見於NOAA官網。具體操作如下:
匯入命令
1)設定工作環境並匯入程式包
%cd "F:\\Dropbox\\python"from mpl_toolkits.basemap import Basemapfrom netCDF4 import Dataset, date2indeximport numpy as npimport matplotlib.pyplot as pltfrom datetime import datetime
2)設定時間並讀取資料
dataset = \Dataset('http://www.ncdc.noaa.gov/thredds/dodsC/OISST-V2-AVHRR_agg')timevar = dataset.variables['time']timeindex = date2index(date,timevar)
3)資料預先處理
sst = dataset.variables['sst'][timeindex,:].squeeze()ice = dataset.variables['ice'][timeindex,:].squeeze()lats = dataset.variables['lat'][:]lons = dataset.variables['lon'][:]lons, lats = np.meshgrid(lons,lats)
4)設定並繪製圖示
fig = plt.figure()ax = fig.add_axes([0.05,0.05,0.9,0.9])m = Basemap(projection='kav7',lon_0=0,resolution=None)m.drawmapboundary(fill_color='0.3')im1 = m.pcolormesh(lons,lats,sst,shading='flat',cmap=plt.cm.jet,latlon=True)im2 = m.pcolormesh(lons,lats,ice,shading='flat',cmap=plt.cm.gist_gray,latlon=True)m.drawparallels(np.arange(-90.,99.,30.))m.drawmeridians(np.arange(-180.,180.,60.))cb = m.colorbar(im1,"bottom", size="5%", pad="2%")ax.set_title('SST and ICE analysis for %s'%date)plt.show()
輸出映像如下
以上就是【Python教程】地理可視化之二的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!