MATLAB Answers

3D plot help

2 views (last 30 days)
I have a row data composed of independent variables x, y, and z and a dependent variable D, and I would like to 3d plot the geometry. Each independent and dependent variable is a 1D array. However, all 3d plotting functions that I am aware of such as isosurface require 3D arrays. My question is how I can transfom the different arrays into 3d arrays, given that they are not uniform.


Walter Roberson
Walter Roberson on 5 Sep 2019
Sorry, nothing yet, I have been a bit busy.
Diab Abueidda
Diab Abueidda on 5 Sep 2019
No worries, take your time.
Many thanks
Diab Abueidda
Diab Abueidda on 10 Sep 2019
Hi Walter,
Any thoughts?

Sign in to comment.

Accepted Answer

Thomas Satterly
Thomas Satterly on 10 Sep 2019
If you're expecting the independant variables X, Y, and Z to make some nice looking 3D surface, you can use Delaunay Triangulation to make a best guess at what that surface would look like and set the corresponding vertex colors to a colormap scaled by dependant variable D. However, you have to be careful about extrapolating data between points using this approach, as the edges generated by triangulation are purely ficticious.
If there is no expected surface between the independant variables, I'd recommend using a 3D scatterplot of X, Y, and Z with the point colors or size determined by dependant variable D. This might be harder to visualizes than a surface, since there's not as strong of relational queues to nearby points, but it does eliminate some misleading extrapolation that generating a surface would cause.

  1 Comment

Diab Abueidda
Diab Abueidda on 17 Oct 2019
Thanks a lot, Thomas!
It worked.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by