It is possible to run a script when you put a courson on a graph?

1 view (last 30 days)
Jessie Bessel
Jessie Bessel on 8 Jun 2022
Edited: Jessie Bessel on 15 Jun 2022
Hello.
Let's suppose that I have the graph from The figure 1 which represent the ratio of the sum of 5 paires of vectors.
I want the following thing to happen. When I put a coursor on one of the spikes, I want to automatically run a script and plot the two vectores that i considered for the ratio, as in Figure2.
It is possible this thing or is too futuristic?
Thanks a lot!

Accepted Answer

Jan
Jan on 8 Jun 2022
Of course this works. It depends on what exactly "put a coursor" means. Moving the mouse over the obejct? Clicking on the line? Set a label?
All three possibilities can trigger a callback function. Please explain, what you exactly need.
I recommend not to run a script, but a function.
  2 Comments
Jan
Jan on 9 Jun 2022
How are the spikes shown? Are they different objects, e.g. of the type 'line'. Then use their ButtonDownFcn to catch the click:
figure;
axes('NextPlot', 'add', 'XLim', [0, 3], 'YLim', [0, 3])
line([1, 1], [0, 2], 'Color', rand(1, 3), 'ButtonDownFcn', @CB)
line([2, 2], [0, 2], 'Color', rand(1, 3), 'ButtonDownFcn', @CB)
function CB(LineH, EventData)
disp('You have clicked on me!')
LineH.LineWidth = LineH.LineWidth + 1;
LineH.Color = rand(1, 3);
end
Insert the code to create the diagrams in the callback function.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!