I guess sometimes its best to dig into ipython. I apparently misunderstood interp, but it seems it doesn't need to be used only with grids created from a Basemap instance. I created the following function which accomplishes my goals (I know this shouldn't all be in one function, I'll look into making it more 'general' as a next step). If I get around to cleaning it up, I'll repost. --john
def create_land_veg_mask(): """ Process to convert Gaussian grid data to lat lon (0.5 deg) for gridded data inside the grib2 ncep files available here: ftp://ftp.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/ """ from mpl_toolkits.basemap import interp, shiftgrid import pygrib def interp_shift(data,lslons,lslats,lonsg,latsg,lons): dataout = interp(data.values,lslons[0,:],lslats[:,0],lonsg,latsg) data_shft,lon_shft = shiftgrid(-180,dataout.T,lons) return lon_shft, lats, data_shft grbs = pygrib.open('gfs.t00z.sfluxgrbf03.grib2') lsmask = grbs.select(name='Land-sea mask')[0] vegtypes = grbs.select(name='Vegetation Type')[0] lslats,lslons = lsmask.latlons() #same for vegtypes reg_lons = np.arange(-360,0,0.5) reg_lats = np.arange(-90,90,0.5) latsg,lonsg = np.meshgrid(reg_lats,reg_lons) lonsout, lats, vegout = interp_shift(vegtypes,lslons,lslats,lonsg,latsg,reg_lons) lonsout, lats, lsmaskout = interp_shift(lsmask,lslons,lslats,lonsg,latsg,lons) return lonsout,lats,vegout,lsmaskout ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users