add data for plot
11 次查看(过去 30 天)
显示 更早的评论
Hi,
lets say I have 3 variables with same length, a,b,c.
If I plot the data with `plot(a,b)`, I can see the values of a and b on the figure when over on a point.
Is there a way to display the value of c as well when I over through a point?
0 个评论
回答(1 个)
Walter Roberson
2023-1-14
Note that this can only be used for some kinds of plotting. For other kinds of plotting you would need to use datacursormode with a customized display function. datacursormode has the advantage that general computations can be done to create what is displayed, not just pre-computed values... but it is a bit of a nuisance to figure out which part of the graph you are pointed to when you use the function.
4 个评论
Walter Roberson
2023-1-16
You are using a rather old version of MATLAB. I am not sure if I have that installed anywhere.
The second parameter to the callback function has a field that permits you to access the current position being pointed at. You can calculate the distance between those coordinates and every point you plotted and find the minimum distance. That will tell you which plotted point you pointing at and allow you to figure out the index of that point within its line object. You can then use your knowledge of which line was being pointed to and the relative index in order to pull out appropriate associated information. You format all of the desired information as a cell array of character vectors and return it. Each cell entry will be displayed on its own line.
There might potentially be shorter ways; I would need to go back to a system that old and test.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!