MATLAB Answers

Custom Datatip with Line Information on Matrix Plot

11 views (last 30 days)
Kyle Young
Kyle Young on 7 Oct 2020
Commented: Adam Danz on 7 Oct 2020
I have two matrices. One matrix is plotted and the other has information about each plot line.
Super simplified example:
t = 0:.001:1;
f = [10,20,30]; % information vector
y = sin(2*pi*f.*t'); % output matrix
plot(t,y)
I would like to use the datatip to show the 'f' information along with the x,y coordinates. I am trying to follow the 'myupdatefcn' method using 'datacursormode', but I can't figure out which line (or column of the matrix) I am placing a datatip on.
Any help would be appreciated.

Accepted Answer

Adam Danz
Adam Danz on 7 Oct 2020
Edited: Adam Danz on 7 Oct 2020
Loop through the object handles and add the DataTipRows for each object.
t = 0:.001:1;
f = [10,20,30]; % information vector
y = sin(2*pi*f.*t'); % output matrix
h = plot(t,y); % <--- store handle
for i = 1:numel(h)
% Add a new row to DataTip showing f-values
h(i).DataTipTemplate.DataTipRows(end+1) = dataTipTextRow('F',repmat({num2str(f(i))},size(h(i).XData)));
end

More Answers (0)

Community Treasure Hunt

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

Start Hunting!