一个简单的nc文件如下,包括维度信息、变量信息。

画图时,我常常用到格网数据(二维),我用nc文件来存储这些格网数据,并利用GMT画图,GMT画的图要比Matlab要美观些,能够自动插值。成果图如下,如果你有画格网图的需求,我也可以用GMT帮你画,免费的哟,前提是你要准备好数据。


下面来学习matlab与nc文件的交互吧。
一.写nc文件
% 创建新的 NetCDF 文件,'NOCLOBBER'指覆盖现有的同名文件ncid=netcdf.create('test.nc','CLOBBER');% 创建 netCDF 维度dimidlon=netcdf.defDim(ncid,'lon',length(lon));dimidlat=netcdf.defDim(ncid,'lat',length(lat));% 创建 NetCDF 变量varid1=netcdf.defVar(ncid,'lon','double',dimidlon);varid2=netcdf.defVar(ncid,'lat','double',dimidlat);varid3=netcdf.defVar(ncid,'TEC','double',[dimidlon dimidlat]);% 格网数据,两个维度% 结束 netCDF 文件定义模式netcdf.endDef(ncid);% 将数据写入 netCDF 变量netcdf.putVar(ncid,varid1,lon);netcdf.putVar(ncid,varid2,lat);netcdf.putVar(ncid,varid3,TEC');%注意:需要转置!你可以对比matlab中的TEC变量和nc文件中的TEC变量,看是否一致% 关闭netCDF文件netcdf.close(ncid);
一.读nc文件
% 读取 NetCDF 数据源中的变量数据ncfile='test.nc';lon=ncread(ncfile,'lon');lat=ncread(ncfile,'lat');TEC=ncread(ncfile,'TEC');TEC=TEC';%注意:需要转置!
最后,查看nc文件需要HDF Explorer这个软件,回台回复“HDF”即可获取链接。如果打开HDF是空白的,把文件拖入即可。
此外,需要声明的是,我曾给其他公众号供稿,写过类似文章,不属于抄袭。



点个在看你最好看

文章转载自不糊涂录,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




