TRMM 3B43是卫星观测月平均降水量产品,是HDF的格点数据。需要注意的是数据中降水变量维的顺序里经度维在前纬度维在后,这与通常的设置(纬度维在前经度维在后)相反,需要对获取的二维数组进行转置,使用transpose函数。数据的经纬度数组也需要定义(文件中没有)。数据中的0值为缺测值(fill_value),并不是一个好的缺测值设置,因此改为-9999.0。

脚本程序:

#Add data file
folder = 'D:/Temp/hdf/'
fns = '3B43.100301.6A.HDF'
fn = folder + fns
f = addfile(fn)
vname = 'precipitation'
t = f[vname]
rain = t[0,:,:]
rain = transpose(rain)
rain[rain==0] = -9999.0
rain.fill_value = -9999.0
lat = arange(-49.875, 49.875, 0.249375)
lon = arange(-179.875, 179.876, 0.25)
#Plot
axesm()
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()

MeteoInfoLab脚本示例:TRMM 3B43 HDF数据的更多相关文章

  1. MeteoInfoLab脚本示例:MERRA HDF数据

    MERRA是NOAA的一种再分析资料,HDF数据遵循COARDS协议,读取比较简单.脚本程序: #Add data file folder = 'D:/Temp/hdf/' fns = 'MERRA3 ...

  2. MeteoInfoLab脚本示例:AVHRR HDF数据

    这里演示读取和绘制AVHRR hdf格式数据,以sst(海表面温度)为例. 脚本程序: #Add data file f = addfile('D:/Temp/hdf/2006001-2006005. ...

  3. MeteoInfoLab脚本示例:TOMS HDF数据

    TOMS (Total Ozone Mapping Spectrometer)数据是全球臭氧观测.脚本程序: #Add data file folder = 'D:/Temp/hdf/' fns = ...

  4. MeteoInfoLab脚本示例:SeaWiFS HDF Grid数据

    SeaWiFS HDF Grid数据读取,特别是涉及到了文件的众多属性数据的读取,数据取对数后绘图.脚本程序: #Add data file f = addfile('D:/Temp/hdf/S199 ...

  5. MeteoInfoLab脚本示例:AMSR-E卫星数据投影

    AMSR-E(http://nsidc.org/data/amsre/index.html)数据中的Land3数据是HDF-EOS4格式,投影是Cylindrical_Equal_Area.这里示例读 ...

  6. MeteoInfoLab脚本示例:获取一维数据并绘图

    气象数据基本为多维数据(通常是4维,空间3维加时间维),只让数据中一维可变,其它维均固定即可提取一维数据.比如此例中固定了时间维.高度维.纬度维,只保留经度维可变:hgt = f['hgt'][0,[ ...

  7. MeteoInfoLab脚本示例:TRMM 2A12 HDF数据

    TRMM 2A12 HDF数据是卫星观测的SWATH数据(轨道数据),比格点数据处理起来要麻烦一些.数据的经纬度保存在geolocation变量中,需要先将经纬度数据读出来(均为2维数组),然后读取云 ...

  8. MeteoInfoLab脚本示例:FY-3C全球火点HDF数据

    FY-3C全球火点HDF数据包含一个FIRES二维变量,第一维是火点数,第二维是一些属性,其中第3.4列分别是火点的纬度和经度.下面的脚本示例读出所有火点经纬度并绘图.脚本程序: #Add data ...

  9. MeteoInfoLab脚本示例:AIRS Grid HDF数据

    AIRS Grid HDF数据是HDF4 EOS格式,数据地理坐标信息可以被MeteoInfo自动识别,脚本程序更为简单.需要注意的是读取数据时Y轴是反向的(卫星数据通常如此).脚本程序: #Add ...

随机推荐

  1. C001:打印勾

    程序: #include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]) { printf(" *\n"); p ...

  2. python日志模块配置

    import logging logging.basicConfig(filename= 'out.log',filemode= 'w+', level= logging.DEBUG, format= ...

  3. 将虚拟机IP与主机IP设置在同一网段的方法

    一.查看主机的网卡名称.IP地址.子网掩码 二.设置VMware Workstation软件 打开虚拟网络编辑器 弹出对话框,选择"更改设置"按钮. 进入虚拟网络编辑器 单选项选择 ...

  4. LeetCode.518 零钱兑换Ⅱ(记录)

    518题是背包问题的变体,也称完全背包问题. 解法参考了该篇文章,然后对自己困惑的地方进行记录. 下面是该题的描述: 有一个背包,最大容量为 amount,有一系列物品 coins,每个物品的重量为 ...

  5. range如何倒序

    for j in range(3,-2,-1): 表示对3进行每次加-1的操作,直到-2,但不包括-2 print(j) 打印出3 2 1 0 -1都换行展示的

  6. swift基本数据类型使用

    swift基本数据类型的使用之一: 字符串的使用 swift String的使用 1.字符串的定义 1> 不可变字符串的定义 2> 可变字符串的定义 2.获取字符串的长度 3.字符串的拼接 ...

  7. JDK15真的来了,一起来看看它的新特性

    目录 简介 JDK15的新特性 JEP 385 Deprecate RMI Activation for Removal JEP 371 Hidden Classes JEP 339 Edwards- ...

  8. mariadb 1

    mariadb(第一章)     数据库介绍 1.什么是数据库? 简单的说,数据库就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织,存储的,我们 ...

  9. git个人常用命令

    git https://www.cnblogs.com/chenwolong/p/GIT.html 添加当前目录的所有文件到暂存区 $ git add . 提交暂存区到仓库区 $ git commit ...

  10. tagCould3d 移动端优化版

    针对https://github.com/bitjjj/JS-3D-TagCloud这个版本的做了移动端性能优化(使用transform做偏移及缩放,优化帧).基本原理一致. class TagCou ...