我的工作目录中有120个.nc文件。我需要从中提取lat,lon和百分比变量以创建动画。我有:
percice = ncread('g4.subsetted.NOBM_MON_R2017_ice.20050801.90W_49N_-0E_72N.nc','NOBM_MON_R2017_ice');
lat = ncread('g4.subsetted.NOBM_MON_R2017_ice.20050801.90W_49N_-0E_72N.nc','lat');
lon = ncread('g4.subsetted.NOBM_MON_R2017_ice.20050801.90W_49N_-0E_72N.nc','lon');
imagesc(lon,lat,log10(percice));
然后我需要用imagesc绘制图像。我的所有.nc文件都是相同的名称,除了每月上升的日期(20050801,20050901,2005001001等)。
如何使用循环来读取.nc文件中的信息,这样我就不需要单独输出每个文件了?
答案 0 :(得分:0)
非常简单直接:
files = dir('**/*.nc'); %read all files with .nc ending
filename=strcat({files.folder},filesep,{files.name})'; %creates filenames with folder+filename
for i=1:length(filename)
percice(i) = ncread(filename{i},'NOBM_MON_R2017_ice');
lat(i) = ncread(filename{i},'lat');
lon(i) = ncread(filename{i},'lon');
end
imagesc(lon,lat,log10(percice));