爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: MeteoInfo

FY2E HDF格式数据处理绘图

[复制链接]

新浪微博达人勋

发表于 2017-8-21 15:23:09 | 显示全部楼层
老师 这是啥意思啊 谢谢老师
_IMA~(V{UT6E][V5O2A2NON.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-8-21 15:27:35 | 显示全部楼层
liuzijing333 发表于 2017-8-21 15:23
老师 这是啥意思啊 谢谢老师

脚本程序出错了,第10行
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-8-21 20:50:30 | 显示全部楼层
MeteoInfo 发表于 2017-8-21 15:27
脚本程序出错了,第10行

是啊 我就用的您的脚本,改了自己的数据路径,就报错。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-8-21 20:52:16 | 显示全部楼层
这就是第十行[
v.setdim是什么意思啊 老师
WXM{$~4Z7]8@4%M]{)K]J}Y.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-9-7 11:00:03 | 显示全部楼层
MeteoInfo 发表于 2015-9-11 14:32
有投影的数据用投影后的坐标更方便。

王老师,这样格式的云图数据该怎么读取?
Z_SATE_C_BAWX_20180901080053_P_FY2E_FDI_ALL_NOM_20180901_0730.hdf

Z_SATE_C_BAWX_20180901080053_P_FY2E_FDI_ALL_NOM_20180901_0730.hdf

43.26 MB, 下载次数: 12, 下载积分: 金钱 -5

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

新浪微博达人勋

 楼主| 发表于 2018-9-7 12:58:01 | 显示全部楼层
sysun 发表于 2018-9-7 11:00
王老师,这样格式的云图数据该怎么读取?
Z_SATE_C_BAWX_20180901080053_P_FY2E_FDI_ALL_NOM_20180901_0 ...

你这个数据文件好像有问题,打不开。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-9-23 21:49:56 | 显示全部楼层
谢谢楼主,有问题再请教
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-1-23 16:23:28 | 显示全部楼层
王老师,不知道MI是否支持FY4的HDF数据文件?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2019-1-23 19:46:22 | 显示全部楼层
孤蓝et 发表于 2019-1-23 16:23
王老师,不知道MI是否支持FY4的HDF数据文件?

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

新浪微博达人勋

发表于 2019-1-24 12:02:17 | 显示全部楼层
本帖最后由 孤蓝et 于 2019-1-24 12:07 编辑

谢谢老师。按照老师的FY2E示例,刚已经测试出来了。
  1. #Add data file
  2. fn = 'D:/FY/FY4A-_AGRI--_N_REGC_1047E_L1-_FDI-_MULT_NOM_20190123043000_20190123043416_4000M_V0001.HDF'
  3. f = addfile(fn)
  4. print(f)

  5. #Get data
  6. NOMChannel02 = f['NOMChannel02']
  7. print(NOMChannel02)
复制代码
利用上述代码:
print(f),我可以看到这个HDF的信息,包括卫星位置,高度,变量等信息;
print(NOMChannel02)可以查看到具体的变量信息,具体如下:

short NOMChannel02(null,null):
        NOMChannel02: valid_range = 0US, 4095US
        NOMChannel02: FillValue = -1US
        NOMChannel02: Intercept = 0.0f
        NOMChannel02: Slope = 1.0f
        NOMChannel02: units = "DN"
        NOMChannel02: center_wavelength = "0.65um"
        NOMChannel02: band_names = "band2(band number is range from 1 to 14)"
        NOMChannel02: long_name = "0.65um channel 1km image data layer"
        NOMChannel02: _Unsigned = "true"

但是,还有三个疑问:
第一个,FY4的数据是全圆盘图和区域图穿插生成的,我此处使用的是区域图,投影是否和全圆盘图有差异?

第二个,后续,x  、y这个怎么理解?麻烦老师指点下?

  • #Set x/y

  •                                
    登录/注册后可看大图
    x = linspace(-5750000.0,5750000.0, 2288)

  •                                
    登录/注册后可看大图
    y = linspace(-5750000.0,5750000.0, 2288)
例如其中的5750000,2288这两个量如何理解,我是否需要配合FY4的数据描述信息来修改?

第三个,如果绘制某一个变量的图形,我直接利用demo中的NOMChannel02 = f['NOMChannel02'],就可以了吗?运行程序有提示错误,是不是我读取数据的方式有问题?
>>> run script...
Traceback (most recent call last):
  File "D:\FY\test.py", line 13, in <module>
    layer = imshowm(x, y, NOMChannel02, 20, proj=ax.proj)
  File "D:\MeteoInfo_1.6.10\MeteoInfo\pylib\mipylib\plotlib\miplot.py", line 2212, in imshowm
    r = gca.imshow(*args, **kwargs)
  File "D:\MeteoInfo_1.6.10\MeteoInfo\pylib\mipylib\plotlib\mapaxes.py", line 967, in imshow
    gdata = minum.asgridarray(a, x, y, fill_value)
  File "D:\MeteoInfo_1.6.10\MeteoInfo\pylib\mipylib\numeric\minum.py", line 1711, in asgridarray
    gdata = GridArray(data.asarray(), x.asarray(), y.asarray(), fill_value)
AttributeError: DimVariable instance has no attribute 'asarray'

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

本版积分规则

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

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

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