Easy way to change callback function

8 次查看(过去 30 天)
I am trying to change the callback function on a bar graph to show pertinent information about the event when a user clicks on one of the bars. I have stumbled through changing the callback function to do this, but I have to manually choose my callback function from the figure window. I would like to use some function in the script so that MATLAB knows to use my own callback function instead of its default. Is there a one line solution to this or do I need to dive deeper into callback functions in MATLAB?

回答(2 个)

Steven Lord
Steven Lord 2019-6-11
It sounds like you want to customize the text that appears when you have data cursors enabled, or that's one way you could achieve your goal. If so use the datacursormode function to retrieve the data cursor mode object for your figure and set its UpdateFcn property. There's an example on the datacursormode documentation page that customizes the cursor for a line plot created with plot and you should be able to adapt that example for use with a bar plot.

Walter Roberson
Walter Roberson 2019-6-11
h = bar(randi(10,5,3));
set(h, 'ButtonDownFcn', @(varargin) disp('I''m hit!'))
  2 个评论
David Teitge
David Teitge 2019-6-11
So I can reference my callback function with your code, but one of the inputs to the function is the event object and I do not know what this is or how to get it.
Walter Roberson
Walter Roberson 2019-6-11
set(h, 'ButtonDownFcn', @(hObject, event, varargin) disp(event))

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Specifying Target for Graphics Output 的更多信息

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by