爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 9626|回复: 15

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

[复制链接]

新浪微博达人勋

发表于 2015-7-4 19:29:41 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 MeteoInfo 于 2017-3-7 22:49 编辑

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

脚本程序:
  1. #Add data file
  2. fn = 'D:/Temp/hdf/FY3A_MERSI_GBAL_L3_ASL_MLT_GLL_20140331_AOAM_5000M_MS.HDF'
  3. f = addfile(fn)
  4. #Get data variable
  5. v = f['Aerosol_Optical_Thickness_of_MERSI_550nm']
  6. #Set x/y
  7. x = arange1(-30.0,7200, 0.05)
  8. y = arange1(-90.0,3600, 0.05)
  9. #Set x/y dimensions
  10. v.setdim('Y', y, 0)
  11. v.setdim('X', x, 1)
  12. #Get data array
  13. aod = v[:,:]
  14. #aod = v['15:55','70:140']
  15. aod = aod[::-1,:] / 10000.
  16. aod = aod['15:55','70:140']
  17. #Plot
  18. axesm()
  19. world = shaperead('D:/Temp/map/country1.shp')
  20. china = shaperead('D:/Temp/map/bou2_4p.shp')
  21. geoshow(china, edgecolor='gray')
  22. geoshow(world)
  23. levs = arange1(0, 20, 0.05)
  24. cols = makecolors(21, cmap='matlab_jet')
  25. cols[0] = 'w'
  26. layer = imshowm(aod, levs, colors=cols)
  27. colorbar(layer)
  28. title('FY-3A AOD (2014-03-31)')


Image00874.png





密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-7-4 20:44:42 | 显示全部楼层
王老师,我现在有一个hdf的卫星数据,使用HDF查看软件看了半天也搞不清楚它的数据排列方式。麻烦老师帮忙看一下,这种数据可不可以用meteoinfo来处理 2A12_090711_66394_6.zip (7.32 MB, 下载次数: 10)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2015-7-5 09:42:01 | 显示全部楼层
楼主的代码是从编辑器中贴出来的吗,可能要放到纯文本编辑软件过滤一下格式,要不然在代码框中会直接翻译样式
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-7-5 19:05:45 | 显示全部楼层
river 发表于 2015-7-4 20:44
王老师,我现在有一个hdf的卫星数据,使用HDF查看软件看了半天也搞不清楚它的数据排列方式。麻烦老师帮忙看 ...

参考此贴:MeteoInfoLab脚本示例:TRMM 2A12 HDF数据
http://bbs.06climate.com/forum.p ... 532&fromuid=106
(出处: 气象家园)

需要下载最新的MeteoInfo_Java_1.2.6R6_Files.zip文件:http://yun.baidu.com/share/link?shareid=669776748&uk=51062435
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-7-5 21:41:50 | 显示全部楼层
mofangbao 发表于 2015-7-5 09:42
楼主的代码是从编辑器中贴出来的吗,可能要放到纯文本编辑软件过滤一下格式,要不然在代码框中会直接翻译样 ...

只要右键粘贴的时候选择粘贴为纯文本就可以了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-7-5 21:42:16 | 显示全部楼层
MeteoInfo 发表于 2015-7-5 19:05
参考此贴:MeteoInfoLab脚本示例:TRMM 2A12 HDF数据
http://bbs.06climate.com/forum.php?mod=viewthre ...

感谢王老师,我先试着弄一下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-8-3 09:59:41 | 显示全部楼层
Traceback (most recent call last):
  File "<iostream>", line 13, in <module>
  File "D:\BaiduYunDownload\MeteoInfo_Java_1.2.7R9_Files\MeteoInfo\pylib\mipylib\dimvariable.py", line 83, in __getitem__
    rr = self.dataset.read(self.name, origin, size, stride).reduce()
AttributeError: 'NoneType' object has no attribute 'reduce'



老师,我按照您的脚本改过了,出现这样的错误是什么原因呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-8-3 10:18:02 | 显示全部楼层
落木萧骁 发表于 2015-8-3 09:59
Traceback (most recent call last):
  File "", line 13, in
  File "D:\BaiduYunDownload\MeteoInfo_J ...

你是怎么改的?

提示信息显示脚本第13行出错。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-8-22 09:19:51 | 显示全部楼层
老师,我下载了“FY3C_VIRRX_GBAL_L2_GFR_MLT_GLL_20150811_POAD_1000M_MS.HDF” 。使用MeteoInfo_Java_1.2.7R12 或MeteoInfo_Java_1.2R4,运行脚本失败,错误是
“Traceback (most recent call last):
  File "<iostream>", line 3, in <module>
NameError: name 'addfile' is not defined”

不知道如何做了。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-8-22 11:57:01 | 显示全部楼层
flashforest 发表于 2015-8-22 09:19
老师,我下载了“FY3C_VIRRX_GBAL_L2_GFR_MLT_GLL_20150811_POAD_1000M_MS.HDF” 。使用MeteoInfo_Java_1.2 ...

要在MeteoInfoLab中使用
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表