App Developer - Mouse Hovering Over Surf Plot in UIAxes Causes Extreme Lag

5 views (last 30 days)
I have constructed a sub-app which is called from within a main app. Within this sub-app I have 3 UIAxes, each of which may be toggled between showing an image, with imagesc(), and showing the surface plot of that image, with surf().
This set-up works well, until I switch any of the axes to the surface plot and hover the mouse over the axis, at which point a significant lag (10-15 seconds?) occurs. This lag does not occur when I hover the mouse over the imagesc plot.
I have tried disabling interactivity with these axes, changing the way in which the surface plots are shaded, and changing the UIAxes to regular axes - none of these attempts worked.
Any advice would be hugely appreciated!
Adam Danz
Adam Danz on 23 Sep 2022
It sounds like a callback or listener is responding to the mouse event. I can't dig deeper without looking at the app and I don't have much time now to do so.

Sign in to comment.

Accepted Answer

Eric Delgado
Eric Delgado on 30 Sep 2022
Mouse over the plot will not affect the performance of the plot if you disable interactions.
Try this at the startup of your sub-app...
hold(app.UIAxes1, 'on')
hold(app.UIAxes2, 'on')
hold(app.UIAxes3, 'on')
Scott Young
Scott Young on 3 Oct 2022
CORRECTION! I'm happy and relived to say this solution is now working - it turns out I had a few helper funtions that reset the axes each time they were called, and as such disabled the disableDefaultInteractivity property - this has now been resolved, and it is working lag-free!
Thank you all for your help! :)

Sign in to comment.

More Answers (0)


Find more on Develop Apps Using App Designer in Help Center and File Exchange




Community Treasure Hunt

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

Start Hunting!

Translated by