爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: artmunich

[分享资料] 问一下nc文件中undef一般设置为多少?

[复制链接]

新浪微博达人勋

发表于 2011-7-10 01:08:17 | 显示全部楼层

你可以试试另一个办法,就是用sdfopen之后,用fwrite将数据写成二进制,然后再编写ctl画图。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-7-10 01:26:43 | 显示全部楼层
本帖最后由 传说中的谁 于 2011-7-10 01:32 编辑

我试了fwrite出来之后画图是没有问题的。方法如下:
'sdfopen F:/uwnd.2011.nc'
'set lon 90 125'
'set lat  10 35'
'set t 1'
'set z 1'
'set gxout fwrite'
'set fwrite F:/u.dat'
'd uwnd'
'disable fwrite'

编写ctl文件如下:
dset f:/u.dat
undef -9.99E33
xdef 15 linear 90 2.5
ydef 11 linear 10 2.5
zdef 1 levels 1000
tdef  1 linear 0Z01JAN2011 6hr
vars 1
u 0 99  U-wind
endvars

画图的脚本:
'reinit'
'open f:/u.ctl'
'set gxout contour'
'set cint 1'
'set ccolor rainbow'
'set cthick 6'
'd u'
'printim f:/u.jpg white y600 x800'

                               
登录/注册后可看大图

评分

参与人数 1金钱 +5 贡献 +1 收起 理由
artmunich + 5 + 1 赞一个!

查看全部评分

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

新浪微博达人勋

发表于 2011-7-10 07:47:03 | 显示全部楼层
哈哈,解决了NC文件的描述文件问题,提供一个示例:
dset f:/uwnd.2011.nc
UNDEF -999
xdef lon 144 linear 0 2.5
ydef lat 73 linear -90 2.5
zdef level 17 levels 1000 925 850 700 600 500 400 300 250 200 150 100 70 50 30 20 10
tdef time 748 linear 0Z01JAN2011  6hr
vars 1
uwnd=>u 17 99 4xDaily U-windendvars
ENDVARS

将上述描述文字保存为x.ddf,然后在GrADS里面用“xdfopen”命令打开,OK:lol

点评

你很给力!  发表于 2011-7-10 09:25

评分

参与人数 1金钱 +6 贡献 +1 收起 理由
artmunich + 6 + 1 很给力!牛人啊牛人

查看全部评分

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

新浪微博达人勋

发表于 2011-7-10 09:13:27 | 显示全部楼层
仔细看看官方的说明吧 http://www.iges.org/grads/gadoc/SDFdescriptorfile.html

nc数据通常会有简单的压缩,用偏移和比例因子表示,ctl中应该包含UNPACK条目。

当然,我也没试过。

NCEP再分析nc数据是符合COARDS约定的,sdfopen就可以了。

点评

欢迎楼主^v^  发表于 2011-7-10 09:25

评分

参与人数 1金钱 +5 贡献 +1 收起 理由
artmunich + 5 + 1 赞一个!

查看全部评分

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

新浪微博达人勋

发表于 2011-7-10 09:48:33 | 显示全部楼层
GrADS中netCDF数据可以通过三种方式打开:(1)sdfopen,只限于符合COARDS约定(http://ferret.wrc.noaa.gov/noaa_coop/coop_cdf_profile.html)的nc数据。netCDF格式(还有HDF格式)非常灵活,用于气象数据时需要有一些约定,最常用的约定是CF(COARDS可以看作CF约定的子集),对于维、变量、属性有详细的规定,这样以来软件才能通过约定对数据进行正确的判读。不知道为什么GrADS不支持CF约定(COARDS约定过于简单,无法描述复杂的数据),因此sdfopen能打开的数据十分有限。(2)xdfopen,对于非COARDS约定的nc数据可以尝试xdfopen来打开,需要一个简单的control文件,“传说中的谁”给出了一个例子,具体可以看官方说明http://www.iges.org/grads/gadoc/gradcomdxdfopen.html。(3)open,如同打开GrADS二进制文件,需要一个完整的control文件,详见http://www.iges.org/grads/gadoc/SDFdescriptorfile.html

第2和3种打开nc文件的方法都需要control文件,是为了软件能够正确读取维和变量等信息。MeteoInfo打开nc文件的方式类似sdfopen,无需control文件,不过MeteoInfo支持CF约定(包含了COARDS约定)、WRF Out约定(WRF模式输出)和IOAPI约定(用于CMAQ模式)。因此可以在不需要control文件的情况下打开更多的nc数据文件。

评分

参与人数 2金钱 +16 贡献 +2 收起 理由
yangwawa + 10 + 1 很给力!
artmunich + 6 + 1 赞一个!受教了!

查看全部评分

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

新浪微博达人勋

发表于 2011-7-10 09:50:33 | 显示全部楼层
nc里面带着详细的说明!楼上14#说的有道理!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-10 10:24:37 | 显示全部楼层
本帖最后由 artmunich 于 2011-7-10 10:26 编辑

感谢各位回答,收获很多~~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-10 10:35:58 | 显示全部楼层
MeteoInfo 发表于 2011-7-10 09:48
GrADS中netCDF数据可以通过三种方式打开:(1)sdfopen,只限于符合COARDS约定(http://ferret.wrc.noaa.go ...

原来MeteoInfo功能如此强大啊,最近会去学一下哈,到时有不理解的还要麻烦您呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-10 10:36:21 | 显示全部楼层
MeteoInfo 发表于 2011-7-10 09:48
GrADS中netCDF数据可以通过三种方式打开:(1)sdfopen,只限于符合COARDS约定(http://ferret.wrc.noaa.go ...

原来MeteoInfo功能如此强大啊,最近会去学一下哈,到时有不理解的还要麻烦您呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-7-12 12:42:46 | 显示全部楼层
请问sdfopen只能打开扩展名为.nc的NetCDF文件吗?
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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