How do I plot data labels alongside my data in a scatter plot?

4 vues (au cours des 30 derniers jours)
s a
s a le 25 Jan 2011
Commenté : Atanu le 15 Mar 2022
I am trying to plot data labels alongside my data in a scatter plot. The goal is to plot several different relationships in the same figure and to include the labels for each of the points.
For example if I have data vectors: [X] and [Y]
and textdata {Xname} to indicate the id corresponding to each (x)
How do I run scatter(X,Y) so that it will also display the string ids [Xname] alongside each data point?

Réponses (2)

Oleg Komarov
Oleg Komarov le 25 Jan 2011

To make it clear with a full example:

% Example input
X = rand(10,1);
Y = rand(10,1);
% example labels
textCell = arrayfun(@(x,y) sprintf('(%3.2f, %3.2f)',x,y),X,Y,'un',0);
% Plot scatter
scatter(X,Y,'filled')
% Add textCell
for ii = 1:numel(X) 
    text(X(ii)+.02, Y(ii)+.02,textCell{ii},'FontSize',8) 
end

Oleg


the cyclist
the cyclist le 25 Jan 2011
I don't know if you can do it within the plotting command, but one way to do this is, after creating the plot, run a loop like
for ii=1:N
text(x(ii),y(ii),textCell{ii})
end
(That code is not exactly right syntactically, but looping with the text command should get you what you want.)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by