爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 5560|回复: 10

脚本为何读NetCDF数据出错?

[复制链接]

新浪微博达人勋

发表于 2012-11-2 16:27:13 | 显示全部楼层 |阅读模式

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

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

x
ecdata=NetCDFDataInfo()
ecdata.ReadDataInfo('d:\\test.nc')
datagrid=ecdata.GetGridData_LonLat(1,1,0)---这句提示错误,出现如下图的窗口

error3.png
请老师指教

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

新浪微博达人勋

发表于 2012-11-2 16:45:15 | 显示全部楼层
你把数据贴出来才能测试问题所在。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-11-2 17:32:08 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-11-2 21:41:40 | 显示全部楼层
vortexroc 发表于 2012-11-2 17:32
这是其中一个文件,请帮忙看看

你的数据只有一个数据变量pres,其它几个(lon, lat, time)都是坐标变量。GetGridData_LonLat的参数分别为timeIndex, varIndex, levelIndex,只有一个数据变量时varIndex只能给0,你给1超出了变量数组的范围。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-11-2 22:40:12 | 显示全部楼层
MeteoInfo 发表于 2012-11-2 21:41
你的数据只有一个数据变量pres,其它几个(lon, lat, time)都是坐标变量。GetGridData_LonLat的参数分别 ...

全部都赋值0也不行啊
datagrid=ncdata.GetGridData_LonLat(0,0,0)也通不过,该用哪个方法来提取格点场呢?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-11-3 11:17:06 | 显示全部楼层
哥们,你用datagrid=ncdata.GetGridData_LonLat(0,3,0)   这样就可以正确获取数据画图了,是你的变量索引不对!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-11-3 13:12:10 | 显示全部楼层
楼上说的是正解。NetCDFDataInfo的GetGridData_LonLat方法里的变量考虑了数据里所有的变量,你的数据中二维数据pres的变量索引是3,其它的都是一维变量,比如lon, lat, time。一维变量用GetGridData方法时会出现上述的错误信息。还有一种方法是用MeteoDataInfo来读数据:
aDataInfo = MeteoDataInfo()
aDataInfo.OpenNCData('d:\\Temp\\nc\pres.sfc.1970.nc')
datagrid = aDataInfo.GetGridData('pres')

想获得不同时次或高度层的数据时可以设置MeteoDataInfo的TimeIndex或LevelIndex属性(默认为0):
aDataInfo.TimeIndex = 1
aDataInfo.LevelIndex = 1
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-11-3 15:58:00 | 显示全部楼层
谢谢两位的热心解答
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-11-28 11:48:47 | 显示全部楼层
本帖最后由 xul03 于 2012-11-28 11:49 编辑
MeteoInfo 发表于 2012-11-3 13:12
楼上说的是正解。NetCDFDataInfo的GetGridData_LonLat方法里的变量考虑了数据里所有的变量,你的数据中二维 ...


王老师,您好,
        hDataInfo.OpenNCData(My.Settings.ncepD & "\hgt.2012.nc") 打开nc文件时,
提示错误:
要添加的值超出范围。
参数名: value

不知道是什么问题,我用sample里的nc文件可以打开,打开我的这个文件时,出现了上述错误,是不是文件太大了?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-11-28 12:06:39 | 显示全部楼层
xul03 发表于 2012-11-28 11:48
王老师,您好,
        hDataInfo.OpenNCData(My.Settings.ncepD & "\hgt.2012.nc") 打开nc文件时,
...

你试试用MeteoInfo桌面软件是否能打开这个数据?
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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