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

1 view (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.
  1 Comment
Rik
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.

Sign in to comment.

More Answers (0)

Categories

Find more on Visual Exploration in Help Center and File Exchange

Tags

No tags entered yet.

Products

Community Treasure Hunt

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

Start Hunting!