Applying labels to specific data points
239 次查看(过去 30 天)
显示 更早的评论
I have a scatter plot of x = [0 1 2] and y = [8 7 6] with corresponding labels in N = ['A', 'B', 'C']. I know how to add labels to all the data points using the text() or labelpoints() functions but I was wondering if there was a way to apply labels to certain data points only, e.g. (1,7) and (2,6)?
2 个评论
Greg
2018-1-15
Share the (relevant) code you currently have so we know what to work with.
Also, what is labelpoints? If you're using non-bundled functions, it helps to say so.
采纳的回答
Greg
2018-1-15
If you're already using text, just throw an index into the mix... Assuming you have:
text(x,y,N);
Change it to:
N = ['A';'B';'C']; % If "N" is not cellstr or string datatype, must be column vector
labelinds = [2,3];
text(x(labelinds),y(labelinds),N(labelinds));
2 个评论
Greg
2018-1-16
编辑:Greg
2018-1-16
Objects returned by the text function have a 'Color' property. I doubt you can set each one to a unique color in a single call to text, but you can loop through the output afterward.
htext = text(...);
C = [1,0,0; ... red
0,1,0]; % green
for itext = 1:length(labelinds)
htext(itext).Color = C(itext,:);
end
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!