Control Text Label on plot with categorical axis
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Lovis Wach
am 11 Mär. 2021
Bearbeitet: Lovis Wach
am 17 Mai 2021
Hi all,
I am using "plot" to create a plot with lines and scatter points. The x-axis is numerical, the y-axis categorical. I would like to add labels to each datapoint, but I am having trouble positioning them. I would like to add a vertical offset, but since the y-axis is categorical I don't know how. I am using the text() command.
Is there any other way to specify the y-location of a label, perhaps by a pixel offset?
Thank you very much!
Example Code:
y={'LGPS', 'LGPS'};
x=[37.19, 40];
quellen={'Wang 2019', 'Wu 2020'};
y=categorical(y);
plot(x,y,'or');
hold on
text(x,y,quellen, 'vert','bottom','horiz','center')
0 Kommentare
Akzeptierte Antwort
Chad Greene
am 11 Mär. 2021
Have you tried using the 'vertical' and 'horizontal' alignment options?
plot(5,6,'o')
text(5,6,'default text')
text(5,6,'above the dot!','vert','bottom','horiz','center','fontangle','italic')
5 Kommentare
Chad Greene
am 11 Mär. 2021
Bearbeitet: Chad Greene
am 11 Mär. 2021
Oh, I see what you mean. This isn't a very elegant fix, but what about adding an empty text line below each label? You could do that like this:
quellen={{'Wang 2019';' '}, {'Wu 2020';' '}};
If that puts it too far away from the center of the dot, you could set the vertical alignment to 'middle'.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Categorical Arrays finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!