How can I show just some slices of a 3D matrix?

22 views (last 30 days)
I have a binary 3D matrix (100*100*100), which is a digital rock. In the matrix 0 and 1 represent the pores and solid area, respectively. I want to represent some slices. For example in XY plane slices 1 and 50 and 100. How can I show just some slices of the rock?

Accepted Answer

Walter Roberson
Walter Roberson on 5 Mar 2018
Use slice()
  2 Comments
Hassan Zhairabany
Hassan Zhairabany on 28 May 2020
Hello,
Could you tell me in case I have a matrix A=randi([0,1],[256,256,5]) and I want to show the plane B=A(255,:,:) but like a top view.
imshow(B) does not work because the image of B considered Multi-plane, B is 256*1*5 double

Sign in to comment.

More Answers (1)

Rik
Rik on 3 Mar 2018
Have you tried to index them and use imshow? (so imshow(A(:,:,50)))
You can use subplot to show the separate images side by side, or you can use montage to show the entire matrix (don't forget to use permute to change your matrix from row x col x page to row x col x color x page).
  3 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!