3D plot from 3D matrix

31 views (last 30 days)
Hans123
Hans123 on 18 Jun 2020
Answered: Walter Roberson on 18 Jun 2020
I read through the forums to help answer my questions before submitting a question. Eventhough there were similar questions asked, I do not believe that my question was answered.
I have a 200x200x600 matrix that needs to be plotted. The matrix contains potential data in a grid cube, The plot is basically a 3D x,y,z grid that contains potential data at those each (x,y,z) point. My question is how would one.
Surf requires (X,Y,Z) co-ordinates and Patch does not seem to be fitting. Any help appreciated!
  4 Comments
Adam Danz
Adam Danz on 18 Jun 2020
I see what you mean. So, if I understand correctly, you want to plot a solid object. How will you see beyond its surface? Since it's a rectangle, how will you see point (50,50,50) for example?
Here's a way to plot a 3D scatter plot but I don't think this is what you're looking for.
data = reshape(1:175, 5,5,7); % Fake data, 5x5x7
[X,Y,Z] = meshgrid(1:size(data,1), 1:size(data,2),1:size(data,3));
scatter3(X(:),Y(:),Z(:), 80, data(:),'filled')
Kelly Kearney
Kelly Kearney on 18 Jun 2020
The slice function may also be of interest

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 18 Jun 2020
volumeViewer()
slice()
isosurface()
Also, vol3d v2 from the File Exchange.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!