FY3A卫星有AOD产品数据,HDF格式,这里示例用MeteoInfo脚本程序读取和显示该类数据。

脚本程序如下:

#-----------------------------------------------------
# Author: Yaqiang Wang
# Date: 2015-3-18
# Purpose: Read FY3A AOD hdf5 data
# Note: Sample
#-----------------------------------------------------
from org.meteoinfo.data.meteodata import MeteoDataInfo
from org.meteoinfo.data.meteodata import Dimension
from org.meteoinfo.data.meteodata import DimensionType
from org.meteoinfo.data.meteodata import DrawMeteoData
from org.meteoinfo.legend import LegendScheme
from org.meteoinfo.shape import ShapeTypes
from ucar.nc2 import NetcdfFile
import os.path
import jarray #Set data directory
dataDir = 'D:/Temp/Hdf' #Create MeteoDataInfo object
mdi = MeteoDataInfo() #Read hdf data file
fn = os.path.join(dataDir, 'FY3A_MERSI_GBAL_L3_ASL_MLT_GLL_20140331_AOAM_5000M_MS.HDF')
if os.path.isfile(fn):
print fn
mdi.openNetCDFData(fn)
dataInfo = mdi.getDataInfo()
#print mdi.getInfoText()
xmin = -30.0
ymin = -90.0
xnum = 7200
ynum = 3600
xdelt = 0.05
ydelt = 0.05
xlist = []
ylist = []
for i in range(0,xnum):
xlist.append(xmin + xdelt * i)
for i in range(0,ynum):
ylist.append(ymin + ydelt * i) X = jarray.array(xlist, 'd')
Y = jarray.array(ylist, 'd')
xDim = Dimension(DimensionType.X)
xDim.setValues(X)
dataInfo.setXDimension(xDim)
yDim = Dimension(DimensionType.Y)
yDim.setValues(Y)
dataInfo.setYDimension(yDim)
var = dataInfo.getVariable('Aerosol_Optical_Thickness_of_MERSI_550nm')
print var.getName()
dimList = [yDim, xDim]
var.setDimensions(dimList)
gData = mdi.getGridData(var.getName())
gData.yReverse()
gData = gData.div(10000.0)
gData.missingValue = -3.2767
#aLS = LegendManage.createLegendSchemeFromGridData(gData, LegendType.GraduatedColor, ShapeTypes.Polygon)
aLS = LegendScheme(ShapeTypes.Polygon)
aLS.importFromXMLFile(os.path.join(dataDir, 'AOD.lgs'))
aLayer = DrawMeteoData.createRasterLayer(gData, "Test_HDF", aLS)
mf = miapp.getMapDocument().getActiveMapFrame()
mf.addLayer(aLayer)
mf.moveLayer(aLayer, 0) print 'Finished!'

MeteoInfo脚本示例:读取FY3A AOD HDF文件的更多相关文章

  1. MeteoInfoLab脚本示例:FY-3A AOD HDF数据

    FY3A卫星有HDF格式的AOD产品数据,全球范围,分辨率为0.05度.读取数据文件变量后要重新设定X/Y维,数据是Y轴反向的,且需要除以10000得到AOD值. 脚本程序: #Add data fi ...

  2. MeteoInfo脚本示例:GrADS to netCDF

    这里给出一个将GrADS数据文件转为netCDF数据文件的脚本示例程序,其它格式数据转netCDF可以参考: #-------------------------------------------- ...

  3. MeteoInfoLab脚本示例:MODIS AOD

    MODIS的气溶胶光学厚度(AOD)产品应用很广,数据可以在Giovanni上下载:http://disc.sci.gsfc.nasa.gov/giovanni/overview/index.html ...

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

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

  5. MeteoInfoLab脚本示例:CloudSAT Swath HDF数据

    读取CloudSAT HDF Swath数据,绘图分上下两部分,上面是时间和高度维的Radar Reflectivity Factor二维图,下面是卫星轨迹图.示例程序: # Add file f = ...

  6. MeteoInfoLab脚本示例:OMI Swath HDF数据

    这个例子读取OMI卫星Swath数据中的CloudFaction变量并绘图.脚本程序: #Add data file folder = 'D:/Temp/hdf/' fns = 'OMI-Aura_L ...

  7. MeteoInfoLab脚本示例:TRMM 3B43 HDF数据

    TRMM 3B43是卫星观测月平均降水量产品,是HDF的格点数据.需要注意的是数据中降水变量维的顺序里经度维在前纬度维在后,这与通常的设置(纬度维在前经度维在后)相反,需要对获取的二维数组进行转置,使 ...

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

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

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

    OMI卫星格点数据的例子,全球臭氧柱总量分布.脚本程序: #Add data file folder = 'D:/Temp/hdf/' fns = 'OMI-Aura_L3-OMTO3e_2005m1 ...

随机推荐

  1. URL 传参转义 (特殊符号转义)

    问题: url参数中 存在+,空格,/,?,%,#,&,=等特殊符号的时候,可能在服务器端无法获得正确的参数值,如何是好? 解决办法:将这些字符转化成服务器可以识别的字符,对应关系如下:URL ...

  2. 关于Java代理那些事儿

    代理是啥?就是代替你执行你持有的主要功能,并且能在你的基础之上完成一些其他的功能.代理的目的就是生成一个和原对象具有同样功能的对象.在Java中,代理是一种设计模式.在Spring的面向切面编程(AO ...

  3. linux下限定连接ip和端口

    1.限制端口 vim /etc/ssh/sshd_config 修改连接端口 修改之后重启sshd服务 service sshd restart 再次连接时就需要使用修改后的端口去连接了 备注:判断修 ...

  4. Apache Pulsar 在腾讯 Angel PowerFL 联邦学习平台上的实践

    腾讯 Angel PowerFL 联邦学习平台 联邦学习作为新一代人工智能基础技术,通过解决数据隐私与数据孤岛问题,重塑金融.医疗.城市安防等领域. 腾讯 Angel PowerFL 联邦学习平台构建 ...

  5. IDEA2020.1使用LeetCode插件运行并调试本地样例

    环境: idea2020.1 插件: LeetCode-editor 6.7 一.IDEA安装LeetCode插件 安装完成重启idea 打开插件 URL可以选择国服和世界服.LoginName和Pa ...

  6. Node.js使用npm安装模块太慢,解决办法

    转自 淘宝 npm 地址: http://npm.taobao.org/ 如何使用 有很多方法来配置npm的registry地址,下面根据不同情境列出几种比较常用的方法.以淘宝npm镜像举例: 1.临 ...

  7. (专题一)07 matlab中字符串的表示

    matlab中,字符串使用单引号括起来的字符序列 >>xm='Central South University' >>xm(1:3) ans= Cen 截取1--3这三个字符, ...

  8. CSAPP 第一章 计算机系统漫游

    第一章 计算机系统漫游 C语言的起源:(系统级编程的首选) C语言与Unix操作系统关系密切 C语言小而简单:其设计由一个人掌控 C语言是为实践目的设计的:其设计用来实现Unix操作系统 C语言程序编 ...

  9. mysql之慢日志查询

    转自https://my.oschina.net/wuweixiang/blog/2987434 首先得配置my.cnf: #===================================== ...

  10. java8的::

    public static void main(String[] args) throws Exception { // 第一种方法引用的类型是构造器引用,语法是Class::new,或者更一般的形式 ...