interpolating Sample data to finer increment

3 vues (au cours des 30 derniers jours)
Michael
Michael le 16 Jan 2018
Commenté : Thorsten le 18 Jan 2018
Hello,
What I have is a 3D set of point X, Y and Z(Weights) and I want to be able to interpolate the Z data to finer intervals in the X and Y direction. Say X from -17.5, 17.5 in 0.5 steps and Y 15 to -15 in 0.25 step.
------- Zone -17.5 0 17.5 15 0.6 0.8 0.6 0 0.7 1 0.7 15 0.6 0.8 0.6 -------
[Weights] = [0.6 0.8 0.6; 0.7 1.0 0.7; 0.6 0.8 0.6];
[X] = [-17.5,0,17.5];
[Y] = [-15, 0, 15];
figure
surf(X,Y,Weights)
title('Original Sampling');

Réponse acceptée

Thorsten
Thorsten le 17 Jan 2018
Vq = interp2(X,Y',Weights, -17.5:0.5:17.5, (-15:0.25:15)');

Plus de réponses (1)

Michael
Michael le 17 Jan 2018
Thanks
Both of the following lines did solve my issue; however, I am not sure what the ' does, In this example exactly what does the prime symbol ' achieve?
Vq = interp2(X,Y,Weights, -17.5:0.5:17.5, (-15:0.25:15)', 'cubic'); Vq = interp2(X,Y,Weights', -17.5:0.5:17.5, (-15:0.25:15)', 'cubic');
  1 commentaire
Thorsten
Thorsten le 18 Jan 2018
The ' transposes the vector from a row to a column vector. From the help of interp2:
Xq can be a row vector, in which case it specifies a matrix with
constant columns. Similarly, Yq can be a column vector and it
specifies a matrix with constant rows.
Not that if you transpose your Weights you will have a different solution.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Interpolation dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by