How to extract satellite measured chlorophyll-a (chl-a) in MATLAB

8次观看(最近30天)
Karthik M
Karthik M on 28 Jul 2021
Commented: Karthik M2021年8月3日
Hi Folks,
我正在使用以下脚本来提取lat [0s 30n]和lon [30w 100e]的chlor_a变量,以便捕获北印度洋LAT的特定区域ESP的CHLA数据值,远程
ncdisp = ('A20150012015008.L3m_8D_CHL_chlor_a_4km.nc');
lat = ncread('A20150012015008.L3m_8D_CHL_chlor_a_4km.nc','lat');
lon = ncread('A20150012015008.L3m_8D_CHL_chlor_a_4km.nc','lon');
chlor_a = ncread('A20150012015008.L3m_8D_CHL_chlor_a_4km.nc','chlor_a');
% Load longitude array:
lon = double(ncread('A20150012015008.L3m_8D_CHL_chlor_a_4km.nc','lon'));
ind1 = find(lon> = 30&lon <= 100);
%对LAT做同样的事情:
lat =双(ncread ('A20150012015008.L3m_8D_CHL_chlor_a_4km.nc','lat'));
ind2 = find(lat> = 0&lat <= 30);
%夹子LAT和LON的指定范围:
lat = lat(ind2);
lon = lon(ind1);
% Make a grid:
[Lat,Lon] = meshgrid(lat,lon);
Looking forward to your valuable suggestions
问候

Accepted Answer

KSSV
KSSV on 28 Jul 2021
让LON,LAT为NC文件的网格坐标。
[X,Y] = meshgrid(lon,lat) ;
xi = linspace(30,100);
yi = linspace(0,30) ;
[Xi,Yi] = meshgrid(xi,yi) ;
iwant = interp2(X,Y,chlor_a',Xi,Yi) ;
如果数据是3D运行循环。
12条评论
Karthik M
Karthik M 2021年8月3日
Hi @KSSV
我尝试使用此脚本仍然存在错误
nccreate('myfile.nc','myvar')
>> A = 99;
>> ncwrite('myfile.nc','myvar',A)
>> s = ncinfo('myfile.nc');
>> file_fmt = S.Format
file_fmt =
'netcdf4_classic'
>> S.Format = 'netcdf4';
>> ncwriteschema('newfile.nc',s)
kindly help

Sign in to comment.

更多的Answers (0)