Effacer les filtres
Effacer les filtres

How do I add both zoom and pan ability using mouse to a plot?

18 vues (au cours des 30 derniers jours)
Magnu Blomberg
Magnu Blomberg le 18 Mai 2016
I have been trying to add both zoom and pan ability to a plot using the mouse scroll wheel and the drag to pan functionality. The area is a map and I would like the same kind of control as in Google Maps etc. I can achieve these functionalities separately with, e.g. the following code.
plot([0 10], [2 8]);
zoom on;
%pan on;
When I try to add both these, i.e. remove the comment, it fails and simply leaves me with the last specified functionality.
I tried to add the respective functionality on scroll wheel and click callbacks,
set(gcf,'WindowScrollWheelFcn', @scrollCb);
set(gcf,'WindowButtonDownFcn', @panCb);
where scrollCb is defined as
function scrollCb(obj, evnt)
zoom on;
display('zoom on');
and panCb with the corresponding code. This does not work and adding a new function callback within the function didn't work either.
Does anyone have a solution to this?
  1 commentaire
Adam
Adam le 18 Mai 2016
As far as I am aware the built-in pan and zoom modes are mutually exclusive. In essence though they just change the xlim and ylim properties of your image so you could program your own non-mutually exclusive versions attached to your callbacks.

Connectez-vous pour commenter.

Réponses (1)

Simon T
Simon T le 2 Nov 2019

Catégories

En savoir plus sur Data Exploration dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by