how to show 20 images in single figure using matlab ?
Show older comments
I have 20 images and I want to show them in single figure in a single axes . I am very new to matlab and I have to get this thing done by tomorrow and so I don't have time to learn to do that. I basically want to ask is when a single image is displayed it is shown with x and y axis (two directions) and if I rotate the figure using 'Rotate 3D' button , I am able to see that this image is occupying z = 0 plane . What I want is that I can display 20 images , on different xy planes , like image1 on z = 0 plane , image2 on z = 1 plane and so on ... How to achieve this please help me out.
Accepted Answer
More Answers (2)
Alex
on 8 Jul 2015
0 votes
Does subplot(n,m,i) help?
3 Comments
Himank Airon
on 8 Jul 2015
Alex
on 8 Jul 2015
MATLAB doesn't have any function that quickly 'voxel'rize the images. The property ZAxis in functions like image/imagesc/image can't be modified.
Image Analyst
on 8 Jul 2015
I don't know what 'voxel'rize means but you can create versions/copies of the image at different z levels using cat(), like I did in my answer, or using repmat().
Steven Lord
on 8 Jul 2015
0 votes
Displaying them all in a single axis is going to be messy, I suspect. Try the Image Processing Toolbox function MONTAGE or use SUBPLOT as Alex has suggested. If those don't do what you want, you will need to "pack" the images together and then call IMAGE or IMAGESC or something similar. I don't have an example of how to do this; you would need to determine the best approach for your data, based on their sizes, color ranges, etc.
1 Comment
Himank Airon
on 8 Jul 2015
Categories
Find more on Lighting, Transparency, and Shading in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!