MATLAB Answers

Delete axes interactions not working?

5 views (last 30 days)
Sven
Sven on 23 Apr 2021
Edited: Adam Danz on 23 Apr 2021
I'm using 2021a and it seems that deleting/disabling interactions isn't working as expected. I'm just trying to either (1) make an axes with just the pan interaction, or (2) make an axes with all interactions removed
fH = figure
ax = gca;
ax.Interactions = panInteraction % I only want the pan interaction but this line seems to do nothing
Similarly removing all via the following is ineffective:
ax.Interactions = [] % This line also seems to do nothing
I'm trying to make a safe figure that the user can't break so I really want to limit what they can do. The only thing I seem to be able to do is make the toolbar invisible via:
ax.Toolbar.Visible = false
Is this a bug? I seem to remember having the ability to manipulate ax.Interactions in earlier MATLAB versions ...
Thanks,
Sven

Accepted Answer

Adam Danz
Adam Danz on 23 Apr 2021
Edited: Adam Danz on 23 Apr 2021
Difference between toolbar and interactions
Interactions are the actions available by using the mouse to zoom/pan/rotate etc the axes without activing a tool in the axis toolbar. For example, after generating a figure that supports zooming you can use the mouse scroll wheel to immediately zoom into the axes.
The toolbar property is independed of the interactions property. For example, you can remove panning from the toolbar but still allow for interactive panning by mouse actions.
I agree that these differences could be clearer in the documentation.
Specify toolbar tools
To specify toolbar tools, use the axtoolbar function. This example reduces the toolbar to the pan tool.
ax = gca();
tb = axtoolbar(ax,'pan')
See the toolbar link I provided above for all toolbar options.
Specify axis interactions
To disable all tools except panning, set the Interactions property of the axes. This example reduces interactions to panning.
ax = gca;
ax.Interactions = panInteraction;
See the interactions link I provided above for all interaction options.
  4 Comments
Adam Danz
Adam Danz on 23 Apr 2021
I see what you mean now, thanks for the usecase description. I wish I could suggest something but I have a feeling the cause of the difference in processing speed is quit deeply rooted.

Sign in to comment.

More Answers (0)

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by