Problem in using interp2
Afficher commentaires plus anciens
Hello,
I want to interpolate my latitude longitude values. They are in the form of matrix.
Lat = 406x270;
Lon = 406X270;
I have read docs about it but still can't figure out that how to do interpolation. Vq = interp2(X,Y,V,Xq,Yq). How to use V here? What is meant by 'Xq and Yq contain the coordinates of the query points'?
I have another variable M (2030x1354). So, I want Lat Lon to become:
Lat1 = 2030x1354;
Lon1 = 2030x1354;
So, should I use M instead of V? Then what about Xq and Yq?
After going through some questions I tried using meshgrid for it. But it gave me following error;
Error using repmat
Requested 109620x109620 (44.8GB) array exceeds maximum array size preference. Creation of arrays greater than this limit may take a long time
and cause MATLAB to become unresponsive.
Lat Lon data is attached. Is there anyother way to do interpolation? Thank you.
Réponses (1)
Vq = interp2(X,Y,V,Xq,Yq) ;
In the above V is the value at (X,Y). You need to have that value.It seems you have only Lon and Lat here.
% Demo
[X,Y,Z] = peaks(100) ; % Z is here V
% Do interpolation
x0 = min(X(:)) ; x1 = max(X(:)) ;
y0 = min(Y(:)) ; y1 = max(Y(:)) ;
x = linspace(x0,x1,50) ;
y = linspace(y0,y1,50) ;
[Xq,Yq] = meshgrid(x,y) ;
Zq = interp2(X,Y,Z,Xq,Yq) ;
So get your V i.,e. Z i.e. respective Lon, LAt value.
11 commentaires
IMC
le 1 Oct 2021
KSSV
le 1 Oct 2021
Yes your M is V.
IMC
le 1 Oct 2021
KSSV
le 1 Oct 2021
It seems you are using meshgrid on a matrix. Show us your whole code.
IMC
le 1 Oct 2021
KSSV
le 1 Oct 2021
M = hdfread(hdf_filename, 'Optical_Properties'); % 2030X1354 double
lat = hdfread(hdf_filename, 'Latitude'); % 406x270 double
lon = hdfread(hdf_filename, 'Longitude'); % 406x270 double
[m,n] = size(M) ;
x0 = min(lon(:)) ; x1 = max(lon(:)) ;
y0 = min(lat(:)) ; y1 = max(lat(:)) ;
x = linspace(x0,x1,m) ;
y = linspace(y0,y1,n) ;
[X,Y] = meshgrid(x,y) ;
Z = interp2(X,Y,M',lon,lat)' ;
pcolor(lon,lat,Z') ;
shading interp ;
colorbar
IMC
le 1 Oct 2021
KSSV
le 1 Oct 2021
Because Xq, Yq is of that size.
IMC
le 1 Oct 2021
IMC
le 1 Oct 2021
Catégories
En savoir plus sur Vector and Raster Map Display dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!