Problem in using interp2
显示 更早的评论
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.
回答(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 个评论
IMC
2021-10-1
KSSV
2021-10-1
Yes your M is V.
IMC
2021-10-1
KSSV
2021-10-1
It seems you are using meshgrid on a matrix. Show us your whole code.
IMC
2021-10-1
KSSV
2021-10-1
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
2021-10-1
KSSV
2021-10-1
Because Xq, Yq is of that size.
IMC
2021-10-1
IMC
2021-10-1
类别
在 帮助中心 和 File Exchange 中查找有关 Vector and Raster Map Display 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!