Filter löschen
Filter löschen

Reduce Matrix size with interpolated data arrays

10 Ansichten (letzte 30 Tage)
Benyamin Nemati
Benyamin Nemati am 10 Mär. 2021
Beantwortet: Jan am 11 Mär. 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.

Akzeptierte Antwort

Mathieu NOE
Mathieu NOE am 10 Mär. 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 Kommentare
Benyamin Nemati
Benyamin Nemati am 11 Mär. 2021
Thanks for response,
what is V function here ? I just have a matrix and want to reach to another matrix, i dont get the V function.
Mathieu NOE
Mathieu NOE am 11 Mär. 2021
V is not a function, it's the Z values
read the help / doc of interp2

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jan
Jan am 11 Mär. 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;

Kategorien

Mehr zu Interpolation finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by