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

4 visualizzazioni (ultimi 30 giorni)
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?

Risposta accettata

Walter Roberson
Walter Roberson il 5 Mar 2018
Use slice()
  2 Commenti
Hassan Zhairabany
Hassan Zhairabany il 28 Mag 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

Accedi per commentare.

Più risposte (1)

Rik
Rik il 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 Commenti

Accedi per commentare.

Categorie

Scopri di più su Read, Write, and Modify Image in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by