# 3D plot of 3 vectors

6 views (last 30 days)
Francesco Porretta on 28 Nov 2020
Commented: Ameer Hamza on 28 Nov 2020
- error -
Ameer Hamza on 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

Ameer Hamza on 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 CommentsShowHide 1 older comment
Ameer Hamza on 28 Nov 2020
I am glad to be of help!