triggering changes in plot with zoom function

1 view (last 30 days)
Hello,
I am trying to generate an interactive plot using the zoom feature of matlab. The plot is a scatter plot with serveral points.
In this plot I would like to change some of the displayed items as a function of the zoom level.
For example when I zoom to a certain level of detail, I would like to display labels for some of the data points. When I zoom out again, these labels should again disappear.
Can someone point me in the right direction where I should start looking?
Even better, does anybody have an example file where they are doing something similar?
All the best and many thanks in advance,
Ulrich

Accepted Answer

Jan
Jan on 18 Nov 2011
From the help text of zoom:
h = zoom;
set(h, 'ActionPreCallback', @myprecallback);
set(h, 'ActionPostCallback', @mypostcallback);
function myprecallback(h, eventdata)
disp(eventdata)
function mypostcallback(h, eventdata)
disp(eventdata)
This means, that you can attach functions, which are called before and after zooming.
  1 Comment
Walter Roberson
Walter Roberson on 18 Nov 2011
In my experience, the ActionPostCallback is the one you want to work with, in order to change the plot to reflect the zoom level the user has requested. The ActionPreCallback seems to be more for deciding whether a particular zoom is to be allowed or not.

Sign in to comment.

More Answers (0)

Categories

Find more on Data Exploration in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!