UIAxes Data Tip interaction
18 views (last 30 days)
Show older comments
Daniele Crimella
on 31 Oct 2022
Commented: Kevin Holly
on 31 Oct 2022
Hello, I recently updated from 2019b (2021b now) and I wanted to use the new support for datacursormode in UIAxes.
With a standard figure I can move the data tip label around the point snapped (NE, NW, SW, SE) and I can also drag the data tip along the plotted curve to adjust its position.
Is it possible to replicate this behavior for UIAxes plots?
I can only enable datacursormode in UIAxes but then I can produce data tips that can only be deleted and repositioned and not interactively dragged along the curve.
Also:
I would like to change the pointer from standard "arrow" to "circle" when inside the uiAxes, I did it with enter/exit function, but the datacursor mode overwrites the bavior and displays the standard "cross"
The code looks like this
function startupFcn(app)
datacursormode(app.MyApp, 'on');
pm.enterFcn = @(~,~) set(app.MyApp, 'Pointer', 'circle');
pm.exitFcn = @(~,~) set(app.MyApp, 'Pointer', 'arrow');
pm.traverseFcn = [];
iptSetPointerBehavior(app.UIAxes, pm)
iptPointerManager(app.MyApp,'enable');
end
with no datacursor mode it works, with datacursor 'on' it displays "cross"
Thanks
0 Comments
Accepted Answer
Kevin Holly
on 31 Oct 2022
Edited: Kevin Holly
on 31 Oct 2022
You could change line 450 in datacursormode
from
setptr(gcf,'datacursor')
to
setptr(gcf,'circle')
or just comment out the line.
Edit: As for moving/repositioning the datatips, it works for me in R2022b, but I have the same issue in R2021b.
2 Comments
Kevin Holly
on 31 Oct 2022
Creating a modified copy of the datacursor function was the route I would have recommended. Generally, the standalone executable should have the same functionality as before you compiled.
More Answers (0)
See Also
Categories
Find more on Introduction to Installation and Licensing 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!