Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import Nio
- from mpl_toolkits.basemap import Basemap
- import matplotlib.pyplot as plt
- import numpy as np
- f = Nio.open_file('nww3.t00z.grib.grib2')
- print f.variables.keys()
- lons = f.variables['lon_0'][:]
- # flip latitudes so data goes S-->N
- lats = f.variables['lat_0'][::-1]
- times = f.variables['forecast_time0'][:]
- datavar = f.variables['HTSGW_P0_L1_GLL0']
- """ntime=10=30hrs"""
- ntime = 5
- data = datavar[ntime,::-1]
- lons[0] = -33.00
- lats[0] = 42.00
- lons[2] = 10.00
- lats[2] = 65.00
- fig = plt.figure(figsize=(16,16))
- m = Basemap(projection='cass',lon_0=-6,lat_0=54.5,\
- llcrnrlat=lats[0],urcrnrlat=lats[2],\
- llcrnrlon=lons[0],urcrnrlon=lons[2],\
- rsphere=6371200.,resolution='i',area_thresh=1)
- x, y = m(*np.meshgrid(lons, lats))
- levels = np.arange(0,9.1,0.5)
- m.fillcontinents(color='#477519')
- m.drawcoastlines(linewidth=0.5, color='k', antialiased=1, ax=None, zorder=None )
- m.contourf(x,y,data,levels)
- #m.drawparallels(np.arange(40,81,10),labels=[1,0,0,0])
- #m.drawmeridians(np.arange(150,241,10),labels=[0,0,0,1])
- #m.drawparallels(np.arange(40,81,10),labels=[1,0,0,0])
- #m.drawmeridians(np.arange(150,241,10),labels=[0,0,0,1])
- plt.title(datavar.long_name+' %s hr fcst'%(times[ntime]),fontsize=12)
- plt.colorbar(orientation='horizontal',shrink=0.9,format="%g")
- plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement