How to use full axes area when zooming image in App GUI
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I plot an image using imshow in an axis in my APP GUI. Then there can be zoomed in to see details.
Now when you zoom in, only the part where the original image was, shows the zoomed image. All the area around it stays empty. Is there any way to make the zoomed image fill the entire axis area, without distorting the image shape?
original view (see the empty space on the sides):
zoomed in image: empty space on the sides remain, which is very annoying, certainly for images that are super slender). I'd like to have the zoomed image fill up the entire available space.
I already found out about imscrollpanel (and ImageAnalyst's zoom demo), but it doesn't work in an app UI...
Thanks!
1 commentaire
DGM
le 18 Mar 2022
It might not be a complete answer, but this is what I did:
Then again, I was using that with akzoom() and other things which can get flaky in some scenarios in newer versions.
You're right though. It's really annoying.
Réponses (1)
Igor Varfolomeev
le 1 Sep 2024
Modifié(e) : Igor Varfolomeev
le 1 Sep 2024
Try this:
imshow('corn.tif')
set(gca, 'Clipping', 'off')
Zooming with Clipping set to on :
Zooming with Clipping set to off (the image fills all the available area):
One drawback is that xlim and ylim behave somewhat unexpectedly in this mode. To feel this, try the following:
set(gca,'yLim',[100, 101])
The result looks like this (the visible part of the image is clearly higher than 2 pixels):
Still, this is sort of acceptable for image viewing (I use this to plot a grid of images, using GUILayout GridFlex .
0 commentaires
Voir également
Catégories
En savoir plus sur Data Exploration dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!