MATLAB Answers

How can I create an interactive vesion of IMAGESC that changes the colormap for the visible area?

4 views (last 30 days)
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
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.

Sign in to comment.

More Answers (0)


No tags entered yet.


Community Treasure Hunt

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

Start Hunting!