TRMM 3B43是卫星观测月平均降水量产品,是HDF的格点数据。需要注意的是数据中降水变量维的顺序里经度维在前纬度维在后,这与通常的设置(纬度维在前经度维在后)相反,需要对获取的二维数组进行转置,使用transpose函数。数据的经纬度数组也需要定义(文件中没有)。数据中的0值为缺测值(fill_value),并不是一个好的缺测值设置,因此改为-9999.0。
脚本程序:#Add data filefolder = 'D:/Temp/hdf/'fns = '3B43.100301.6A.HDF'fn = folder + fnsf = addfile(fn)vname = 'precipitation't = f[vname]rain = t[0,:,:]rain = transpose(rain)rain[rain==0] = -9999.0rain.fill_value = -9999.0lat = arange(-49.875, 49.875, 0.249375)lon = arange(-179.875, 179.876, 0.25)#Plotaxesm()mlayer = shaperead('D:/Temp/map/country1.shp')geoshow(mlayer)layer = imshowm(lon, lat, rain, 20)colorbar(layer, orientation='horizontal')title(vname + 'at scan=0 (mm/hr)')axism()