3d surface plot by having 3 uncorrelated vectors
Show older comments
Hi everyone,
I'm trying to plot a 3D surface in Matlab, having three different vectors x,y,z. All the three have dimension 1601x1 and they are not correlated by any mathematical formula, they are only coordinates of some points that have to be plotted. I would like to plot a 3d homogeneous surface (not point by point) with different colours indicating the different heights (maybe yellow where z is higher and blue where z is lower). I don't want a discrete surface (actually I've already tried to use plot3 but it seems to be a point surface or a line one, I want an homogenous thing).
Could you help me please?
Thank you in advance,
Gianmarco
3 Comments
Walter Roberson
on 29 Jan 2021
In order to describe a surface, you need information about which points are connected to which, so that you can create faces. You currently have a list of points, but how to decide which points are connected to which ones?
Gianmarco Azzolin
on 29 Jan 2021
KSSV
on 29 Jan 2021
Attach your data.
Answers (1)
KSSV
on 29 Jan 2021
Let (x,y,z) be your three column arrays.
dt = delaunayTriangulation(x,y) ;
tri = dt.ConnectivityList ;
figure
trisurf(tri,x,y,z)
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!