3D grid from a large 3D matrix

3 次查看(过去 30 天)
I have a 3D matrix, .mat file attached in this thread, which has a 200x200x600 matrix has 5021 non-zero values and 23.9 million zero values.
It is a cuboid grid (x and y = -200:200 and z = -600 to 600) that contains charge data.I used the vol3d v2 function to visualize the 3D cuboid grid that I have, however the number of zero values dilute the non-zero values making it unable to observe the grid properly.
I believe obtaining a slice of the grid at x=y=0 would provide some insights as how the charge is distributed (this is a charge grid), however I am unable to create a meshgrid for the co-ordinate axes where x=y=-200:200 and z=-600:600
The in-built MATLAB app - volumeViewer yeilds a similar result. Hope you could provide some direction, I have attached the .mat file containing the 200x200x600 matrix if it is any help.

采纳的回答

KSSV
KSSV 2020-6-23
编辑:KSSV 2020-6-23
load Q3D.mat ;
x = linspace(-200,+200,200) ;
y = linspace(-200,+200,200) ;
z = linspace(-600,+600,600) ;
[X,Y,Z] = meshgrid(x,y,z) ;
% give your range
xslice = [50:100] ;
yslice = [] ;
zslice = 0 ;
slice(X,Y,Z,Q3D,xslice,yslice,zslice)
  5 个评论
Hans123
Hans123 2020-6-23
^I managed to fix that issue, my mesh is too fine. I set my edgecolor to non. Thanks KSSV
KSSV
KSSV 2020-6-23
Hey perfect.....yes edgecolor is an option...also try shading interp after plot.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by