matlab 读取nc文件
我的nc文件为气象数据,在matlab中用nc1=netcdf.open('uwnd.2010.nc','NC_NOWRITE')命令打开,显示为nc1=3,。我的mat...
我的nc文件为气象数据,在matlab中用nc1=netcdf.open('uwnd.2010.nc', 'NC_NOWRITE') 命令打开,显示为nc1=3,。
我的matlab版本是2008b,不需要装nc的插件,有没有高手指点下接下来该怎么做,这个3是什么意思,我该怎么处理这样的数据呢!先谢谢! 展开
我的matlab版本是2008b,不需要装nc的插件,有没有高手指点下接下来该怎么做,这个3是什么意思,我该怎么处理这样的数据呢!先谢谢! 展开
3个回答
展开全部
首先,nc1的这个“3”是netcdf.open函数返回的ncid;Matlab自带、与NETCDF相关的 Low-Level 函数中很多以 id 来识别文件(ncid)、维度(dimid)、变量(varid)。在help中搜索 “netcdf” 可以找到所有相关函数。
其次,仅需要从nc文件中读取数据时,不必调用这些 Low-Level 函数,一般使用 ncread,例如最简单的 u = ncread('uwnd.2010.nc', ‘u’); 这个命令将从你的nc文件中读取变量“u”。详细说明建议看help:help ncread。
最后,如上面建议的,简单的工作中,尽量使用 ncread、ncwrite、 ncreadatt 等函数。一方面,这些函数使用时非常方便、直观;另一方面,使用那些 netcdf.××× 形式的 “Low Level” 函数前,最好先熟悉一下 NetCDF C Interface,否则可能会出现一些问题。例如使用 ncread 可以直接使用文件名、变量名读取变量,但 “Low Level” 函数则需要:获得ncid(ncid = netcdf.open(‘×××’))、获得变量id(varid = netcdf.inqVarID(ncid,‘×××’))、读取变量(data = netcdf.getVar(ncid,varid))三步。
PS:
Matlab从2008b开始,就开始自带netcdf接口了(当时是netcdf-3),并且跟随netcdf标准的演变,在之后的版本中添加了对netcdf-4、OpenDAP等的支持,并加入了一些符合Matlab习惯的函数。
因此如果使用的是2008b之前的版本,需要MEXNC、SNCTOOLS等外部接口;而2008b-2010b则不必依赖外部函数;最后如果是2011a及更新版本的,则可以直接使用“ncread”、“ncwrite”等非常方便的函数
其次,仅需要从nc文件中读取数据时,不必调用这些 Low-Level 函数,一般使用 ncread,例如最简单的 u = ncread('uwnd.2010.nc', ‘u’); 这个命令将从你的nc文件中读取变量“u”。详细说明建议看help:help ncread。
最后,如上面建议的,简单的工作中,尽量使用 ncread、ncwrite、 ncreadatt 等函数。一方面,这些函数使用时非常方便、直观;另一方面,使用那些 netcdf.××× 形式的 “Low Level” 函数前,最好先熟悉一下 NetCDF C Interface,否则可能会出现一些问题。例如使用 ncread 可以直接使用文件名、变量名读取变量,但 “Low Level” 函数则需要:获得ncid(ncid = netcdf.open(‘×××’))、获得变量id(varid = netcdf.inqVarID(ncid,‘×××’))、读取变量(data = netcdf.getVar(ncid,varid))三步。
PS:
Matlab从2008b开始,就开始自带netcdf接口了(当时是netcdf-3),并且跟随netcdf标准的演变,在之后的版本中添加了对netcdf-4、OpenDAP等的支持,并加入了一些符合Matlab习惯的函数。
因此如果使用的是2008b之前的版本,需要MEXNC、SNCTOOLS等外部接口;而2008b-2010b则不必依赖外部函数;最后如果是2011a及更新版本的,则可以直接使用“ncread”、“ncwrite”等非常方便的函数
展开全部
在matlab中读取nc文件的步骤如下:
1、在matlab命令窗口下键入ncbrowser,回车,打开要读取的nc文件,就可以出现一个界面;
2、界面分三列,选中中间一列的某一变量,就可以通过点击第三列查看该变量的基本信息,包括变量名,单位等信息;
3、选中变量后点击右下角的listing可将该变量在窗口中列出(数组很大时慎用,可能要耗费大量的时间);
4、点击extrat则可将该变量输出到matlab workspace中(过程中可以修改输出的变量名),之后就可对该变量进行操作。
1、在matlab命令窗口下键入ncbrowser,回车,打开要读取的nc文件,就可以出现一个界面;
2、界面分三列,选中中间一列的某一变量,就可以通过点击第三列查看该变量的基本信息,包括变量名,单位等信息;
3、选中变量后点击右下角的listing可将该变量在窗口中列出(数组很大时慎用,可能要耗费大量的时间);
4、点击extrat则可将该变量输出到matlab workspace中(过程中可以修改输出的变量名),之后就可对该变量进行操作。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
格式错误
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |