How can I create an interactive vesion of IMAGESC that changes the colormap for the visible area?
1 view (last 30 days)
Show older comments
MathWorks Support Team
on 20 Jul 2009
Commented: Rik
on 4 Mar 2021
I would like to use an interactive version of the IMAGESC function that would respond to zoom levels. The colormap should be rescaled over the range of only the visible area of the matrix, rather than wasting colors on values outside of the area shown as if IMAGESC were called again just on the visible area each time the display was zoomed in or out.
Accepted Answer
MathWorks Support Team
on 17 Feb 2021
Edited: MathWorks Support Team
on 17 Feb 2021
This can be done using a Zoom Object. You can create a zoom mode object with the ZOOM command and set the object's ActionPostCallback function. See the following documentation page for more information on this callback:
You may access the same page locally by typing the following at the MATLAB prompt:
doc zoom
The callback function can be used to set the axes' CLim property based on the minimum and maximum values of the currently visible area. See the attached example file demo_zoom.m. This example shows a basic implementation of how this could be done.
1 Comment
Rik
on 4 Mar 2021
If you open it with a text editor, you can see it is simple m-code. They should remove the .exe from the filename and everything will be fine.
More Answers (0)
See Also
Categories
Find more on Visual Exploration in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!