在matlab中读取nc文件

时间:2017-11-11 19:59:21

标签: matlab plot time-series netcdf4

我想从文件夹中读取多个nc文件。这些文件是矩阵形式,即分层数据。我已成功读取单个文件并显示属性并提取它们。但是当我试图绘制它们时,它以错误结束。我是MATLAB的新手,所以我不知道这是什么类型的错误以及如何解决它。 我还必须读取多个文件并使用所需变量创建单独的数据框。 我试过这段代码:`

    filename='1.nc';
    ncdisp(filename);
    lat=ncread(filename,'latitude');
    lon=ncread(filename,'longitude');
    time=ncread(filename,'time');
    vertical=ncread(filename,'D_vertical_profile')
    mymap=pcolor(lat,lon,time)`

它带有错误

使用pcolor时出错(第57行) 矩阵维度必须一致。

1 个答案:

答案 0 :(得分:0)

遵循官方文件:

  

pcolor(X,Y,C)在X和Y指定的位置绘制C元素的伪彩色图

所以:

ncfile = 'C:\Path\To\File\1.nc';

lon = ncread(ncfile,'longitude');
lat = ncread(ncfile,'latitude');
time = ncread(ncfile,'time');

tco = ncread(ncfile,'TCO');
[x,y] = meshgrid(lon,lat);

for i = 1:length(time)
    pcolor(x,y,tco(:,:,i)');
    shading interp;
    title(sprintf('time = %f',time(i)));

    pause(0.1);
end