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

4 visualizaciones (últimos 30 días)
s a
s a el 25 de En. de 2011
Comentada: Atanu el 15 de Mzo. de 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?

Respuestas (2)

Oleg Komarov
Oleg Komarov el 25 de En. de 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 el 25 de En. de 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.)

Categorías

Más información sobre Annotations en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by