其次,仅需要从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='/home/willie/Desktop/nc.nc'
with open(nc,'rb') as f:
s=f.read()
nc文件是常用的科学数据文件,该文件可以使用ncbrowse软件打开,但是个人觉得该软件只能打开一个nc文件,无法连续处理多个文件,因此这里介绍如何使用matlab打开该文件。Matlab中如何打开nc文件
matlab2013之后,对nc文件的处理更进了一步,到了2016a版本就更加方便。
查看nc文件的命令:ncinfo;
我们在网上下载了一个nc文件“FK150117_wh300_tide_IO.nc”,使用ncinfo命令查看文件内容。
ncinfo('FK150117_wh300_tide_IO.nc')
Matlab中如何打开nc文件
Matlab中如何打开nc文件
可以查看到nc文件的各个变量的信息。
当然也有数据说明,我们打开time的attributes之后,可以看到相关信息。
Matlab中如何打开nc文件
可以根据自己的需要导出文件的内容。比如我们想导出文件中名字为lon和lat的信息。
使用ncread命令。
lon = ncread('FK150117_wh300_tide_IO.nc','lon')
lat = ncread('FK150117_wh300_tide_IO.nc','lat')
plot(lon,lat,'b.')
Matlab中如何打开nc文件
也可以使用uv生成其他图形:
u = ncread('FK150117_wh300_tide_IO.nc','u')
v = ncread('FK150117_wh300_tide_IO.nc','v')
quiver(lon,lat,u,v)
下图是放大后的矢量图形。
Matlab中如何打开nc文件
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)