3D grid from a large 3D matrix

2 vues (au cours des 30 derniers jours)
Hans123
Hans123 le 23 Juin 2020
Commenté : KSSV le 23 Juin 2020
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.

Réponse acceptée

KSSV
KSSV le 23 Juin 2020
Modifié(e) : KSSV le 23 Juin 2020
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 commentaires
Hans123
Hans123 le 23 Juin 2020
^I managed to fix that issue, my mesh is too fine. I set my edgecolor to non. Thanks KSSV
KSSV
KSSV le 23 Juin 2020
Hey perfect.....yes edgecolor is an option...also try shading interp after plot.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by