How to interpolate a lat lon satellite data on regular grid

30 visualizaciones (últimos 30 días)
Eugene Pashinov
Eugene Pashinov el 14 de Feb. de 2020
Comentada: darova el 15 de Feb. de 2020
Hello. I have SWATH dataset of sateliite measurements. Data are not gridded, and consists of Latitude (1202x123) Longitude(1202x123) and data of measurements same size. I need to place data on regular grid 0.25x0.25 deg, and obtain result data array (720x1440). I've tried to use griddata:
result = griddata(Longitude,Latitude,V23_8,Glong,Glat);
imagesc(Glong(1,:),Glat(:,1),result)
axis xy
but there is some problems on edges.
And result of geoshow:
geoshow(Latitude,Longitude,V23_8,'DisplayType','texturemap')
How to get gridded data array same as it makes geoshow?
Attached of data sample.

Respuestas (1)

darova
darova el 15 de Feb. de 2020
I just created new mesh
[m,n] = size(V23_8); % original size
[gm,gn] = size(Glat); % result size
[X,Y] = meshgrid(1:n,1:m); % original mesh
gx = linspace(1,n,gn);
gy = linspace(1,m,gm);
[GX,GY] = meshgrid(gx,gy); % new mesh
Glat = griddata(X,Y,Latitude,GX,GY);
Glong = griddata(X,Y,Longitude,GX,GY);
result = griddata(X,Y,V23_8,GX,GY);
subplot(121)
h1 = pcolor(Longitude,Latitude,V23_8);
subplot(122)
h2 = pcolor(Glong,Glat,result);
% set(h1,'edgecolor','none')
% set(h2,'edgecolor','none')
  2 comentarios
Eugene Pashinov
Eugene Pashinov el 15 de Feb. de 2020
Editada: Eugene Pashinov el 15 de Feb. de 2020
Thsnks, but grid coordinate map should not be changed

Iniciar sesión para comentar.

Productos


Versión

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by