Reduce Matrix size with interpolated data arrays
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Benyamin Nemati
el 10 de Mzo. de 2021
Respondida: Jan
el 11 de Mzo. de 2021
Hi,
I have a 360*720 precipitation matrix with values in milimeter, and i desire a 180*360 matrix with interpolated data to compare my precipitation with other 180*360 data.
here you can see the original 360*720 plot of my data. please help me on this.
Thank you.![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/545037/image.jpeg)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/545037/image.jpeg)
0 comentarios
Respuesta aceptada
Mathieu NOE
el 10 de Mzo. de 2021
hello
simply use a 2D interpolation with the appropriate new Xq and Yq vectors
interp2 2-D interpolation (table lookup).
Vq = interp2(X,Y,V,Xq,Yq) interpolates to find Vq, the values of the
underlying 2-D function V at the query points in matrices Xq and Yq.
Matrices X and Y specify the points at which the data V is given.
2 comentarios
Mathieu NOE
el 11 de Mzo. de 2021
V is not a function, it's the Z values
read the help / doc of interp2
Más respuestas (1)
Jan
el 11 de Mzo. de 2021
The mean over neighboring rows and columns is smarter than a linear interpolation, which just omits the intermediate rows and columns:
x = rand(360, 720);
y = x(1:2:end, :) + x(2:2:end, :);
z = (y(:, 1:2:end) + y(:, 2:2:end)) / 4;
0 comentarios
Ver también
Categorías
Más información sobre Interpolation en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!