data section from nc file
1 次查看(过去 30 天)
显示 更早的评论
Hi, I wrote the following script to extract data from my .nc file. The data is for the QIRRIG variable. Time is monthly, over 37 months. Location is a specified grid square. So what i need is 37 numbers corresponding to each month. But I am only getting summaries. Please help!
close all
ncid = netcdf.open('IRAM_2000.nc','NC_NOWRITE');
lat = netcdf.getVar(ncid,0);
whos lat
lon = netcdf.getVar(ncid,1);
whos lon
from_date = '2007-01-16'; to_date = '2010-01-16';
time = netcdf.getVar(ncid,2);
whos time
QIRRIG = netcdf.getVar(ncid,3); %var3 QIRRIG 1081x days
whos QIRRIG
time_datenum = time / 365 + datenum('0-12-31 00:00:00');
date_match = time_datenum >= datenum('2007-01-16') && time_datenum <= datenum('2010-01-16');
selected_QIRRIG = QIRRIG(:, :, date_match);
latlim = [5 30]; %5N 30S
lonlim = [65 95]; %65W 95W
0 个评论
采纳的回答
KSSV
2018-10-10
YOu need not use such complex functions..have a look on functions ncread, ncdisp and ncinfo. ncread will give you the variable you wanted.
iwant = ncread(myncfile,'QIRRIG') ;
8 个评论
KSSV
2018-10-11
ncfile = 'IRAM_2000.nc' ;
lon = ncread(ncfile,'lon') ;
lat = ncread(ncfile,'lat') ;
Q = ncread(ncfile,'QIRRIG') ;
dx = 1. ; % can be varied, data is with resolution 1.25
dy = 0.5 ; % can be varied, data is with resolution 0.944
xi = 65:dx:95 ;
yi = 5:dy:30 ;
[X,Y] = meshgrid(lon,lat) ;
[Xi,Yi] = meshgrid(xi,yi) ;
Qi = interp2(X,Y,Q',Xi,Yi)' ;
figure(1)
pcolor(X,Y,Q') ; shading interp ; colorbar
figure(2)
pcolor(Xi,Yi,Qi') ; shading interp ; colorbar
KSSV
2018-10-11
In the file you attached the variables were lon nd lat. May be you have changed a file..and variables are written with different name. Check that with ncdisp and write the proper variable names.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Import and Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!