0
私はこの質問-を読んだことがありますが、私には当てはまりませんが、自分の国のシェイプファイルがあり、そのシェイプファイルにGRIBファイルの降水量データを重ねたいと思っています。これはpygribとmatplotlibを使用しています。 Basemap.coastlines()とBasemap.countries()の使用には興味がありません。これは、シェイプファイルで利用できるためです。私は自分のシェイプファイルでそれを上書きしたい。それ、どうやったら出来るの ?matplotlibとpygribを使ってシェイプファイルに降水量データをオーバーレイする方法は?
#!/usr/bin/python3.4
import numpy as np
import pygrib
import shapefile
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
grbs = pygrib.open('00020000')
grb = grbs.select(name='Total Precipitation')[0]
data = grb.values
lat,lon = grb.latlons()
m=Basemap(projection='mill',lat_ts=10,llcrnrlon=lon.min(), \
urcrnrlon=lon.max(),llcrnrlat=lat.min(),urcrnrlat=lat.max(), \
resolution='c')
m.readshapefile("adm3.shp")
x,y=m(lon,lat)
cs = m.pcolormesh(x,y,data,shading='flat',cmap=plt.cm.jet)
m.drawparallels(np.arange(-90.,80.,5.),labels=[1,0,0,0])
m.drawmeridians(np.arange(-180.,180.,5.),labels=[0,0,0,1])
plt.colorbar(cs,orientation='vertical')
plt.title('Precipitation Plot')
plt.show()