interp2のエラー

2 views (last 30 days)
Hiroki Takeda
Hiroki Takeda on 27 Apr 2022
lat,lon,chlor_aなどの生データは4320×2160です。
ic=interp2(clon,clat,c,iLon,iLat);
がうまくいかないようです。最終的にはgeoshowでコンターmapにしたいと思っています。
ご教示くださりますと幸いです。
よろしくお願いいたします。
clear; close;
varname1 = 'chlor_a';varname2 = 'lon';varname3 = 'lat';
chlo=ncread('../data/Chlo/A20021822002212.L3m_MO_CHL_chlor_a_9km.nc',varname1);
lon=ncread('../data/Chlo/A20021822002212.L3m_MO_CHL_chlor_a_9km.nc',varname2);
lat=ncread('../data/Chlo/A20021822002212.L3m_MO_CHL_chlor_a_9km.nc',varname3);
lon=repmat(lon,1,size(lat,1));lat=repmat(lat',size(lon,1),1);
mvar_all = chlo;
% ブロック処理 (平均化処理) を行う
kernel = ones(48,30)/(48*30);
c = conv2(mvar_all, kernel);clon = conv2(lon, kernel);clat = conv2(lat, kernel);
c = c(48:48:end,30:30:end);clon = clon(48:48:end,30:30:end);clat = clat(48:48:end,30:30:end);
%% Figureの設定
f = figure;movegui(f,'northeast');
% 北緯[20-50], 東経[120-155] の領域を表示
worldmap([-90,90],[-180,180]);
land = shaperead('landareas.shp', 'UseGeoCoords', true);
%%2D interp
[iLon,iLat]=meshgrid(-177.5:5:177.5, -89.5:2:89.5);
ic=interp2(clon,clat,c,iLon,iLat);
% .matに変数を保存する
filename = ['2000-20',num2str(n,'%02d'),'_Chlo_test.mat'];save(filename,'ic');
% SST データをヒートマップ表示
aa = geoshow(iLat, iLon, it,'DisplayType','surface');hold on; % 重ね書きを許可する
% colorbar axis
caxis([-5 35]);colorbar;hold on;

Answers (0)

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!