How can I visualize 3D matrix? (extension of imagesc)
79 次查看(过去 30 天)
显示 更早的评论
I have a 3-D matrix such as 50x70x30 like below.
(This image is from the Mathworks document)
Each slice(rowxcolumn) has cells with the range of 0 to 5. I want to visualize the whole slices with color range like imagesc in 2D, but I couldn't find the appropriate built-in function in MATLAB to represent the whole slices in a figure (For example, just imagine there are 30 slices of 2D imagesc(matrix) aligned in x-direction). Is there any way that I can solve this problem?
4 个评论
Adam
2020-3-6
You only need one. Take a look at the example. It creates X, Y, Z grids using meshgrid to provide positional volumes, but there is only 1 actual volume with data that you are visualising.
回答(1 个)
Rajani Mishra
2020-3-9
For visualizing the slices of a 3D matrix, you can try one of the below methods:
- imshow3D function displays images in a slice by slice fashion. Refer below code:
A = [1 2 3; 4 5 6; 7 8 9];
A(:,:,2) = [10 11 12; 13 14 15; 16 17 18]
imshow3D(A);
This displays all the two slices of the image matrix. For more information refer below:
- You can create slices from the image matrix and use imagesc function on the 2D image generated
image2D = squeeze(A(:,:,sliceNumber));
imagesc(image2D);
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!