MATLAB 读取 NetCDF 数据源中的变量数据

语法

文件名即nc文件,变量名为要读取的变量

vardata = ncread(file_name,varname)
vardata = ncread(file_name,varname,start,count)
vardata = ncread(file_name,varname,start,count,stride)

不同的nc文件,里面的变量不同,需要首先了解变量名以及起维度。可以通过ncinfo函数读取nc文件中的变量以及维度。

ncdisp('c3s_ALBB-BH_20180113000000_GLOBE_PROBAV_V1.0.1.nc')
ncinfo('c3s_ALBB-BH_20180113000000_GLOBE_PROBAV_V1.0.1.nc')
ncinfo('example.nc');

在这里插入图片描述
在这里插入图片描述

读取

以AL_BH_BB变量读取为例,从上图可以看到该变量是1x3结构,大小是[40320,15680,1],这样的数据大小本人电脑无法读取会显示内存不足,此时可以分批读取。读取的变量有40320x15680个元素,可以看成是个矩阵。下面代码的作用是从矩阵的第一行,第一列读取,读取100行,100列,注意:关于第三维这里用不到就不用管它了,但是得有。

提示:对于内存不足的情况,可以通过datastore进行处理,该函数可以搜索一下用法。

vardata = ncread('c3s_ALBB-BH_20180113000000_GLOBE_PROBAV_V1.0.1.nc','AL_BH_BB',[1,1,1],[100,100,1]);

分批次读取结束后,要把数据进行拼接前需要用imresize函数进行缩放后拼接,然后绘图。注意:这里仅仅简单可视化了一下,并未按照科研绘图规范进行。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/wokaowokaowokao12345/article/details/114368754