3D plot of 3 vectors

139 vues (au cours des 30 derniers jours)
Francesco Porretta
Francesco Porretta le 28 Nov 2020
Commenté : Ameer Hamza le 28 Nov 2020
- error -
  1 commentaire
Ameer Hamza
Ameer Hamza le 28 Nov 2020
Dear all, I have the three vectors reported in the file "data.mat" (x,y,z respectively).
I need to 3D plot them. However, something strange happen, since the z vector is 0 all around the borders, but plotting it I obtained that z is 0 only in 4 points (along y=0 axis), as shown in the figure below:
I wrote this code, to do the plot above:
x = data(:,1);
y = data(:,2);
[X,Y] = meshgrid(x,y);
z = data(:,3)
Z = meshgrid(z);
sup = surf(X,Y,Z)
thanks in andvance for your help

Connectez-vous pour commenter.

Réponse acceptée

Ameer Hamza
Ameer Hamza le 28 Nov 2020
You first need to convert your data into a grid format using scattered interpolation
x = data(:,1);
y = data(:,2);
z = data(:,3);
mdl = scatteredInterpolant(x, y, z);
[xg, yg] = meshgrid(unique(x), unique(y));
zg = mdl(xg, yg);
sup = surf(xg,yg,zg)
  2 commentaires
Francesco Porretta
Francesco Porretta le 28 Nov 2020
It works! thank you so much!
Ameer Hamza
Ameer Hamza le 28 Nov 2020
I am glad to be of help!

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by