Clear Filters
Clear Filters

How to add text to a line in the plot?

192 views (last 30 days)
Hi all,
This code:
load('z_means'); load ('z_diffs'); load ('z_CR_ofmean')
figure ('color','w');
plot(z_means,z_diffs,'sr', 'MarkerSize', 9)
hold on
%Plot lines
plot(z_means,zeros(1,length(z_means)),'r', 'LineWidth', 0.7); %%%plot zero
plot(z_means, ones(1,length(z_means)).*z_CR_ofmean(1),'r--', 'LineWidth', 0.6); %%%plot the upper CR
plot(z_means, ones(1,length(z_means)).*z_CR_ofmean(2),'r--', 'LineWidth', 0.6); %%%plot the lower CR
% Add text
text(z_CR_ofmean, [mynum2str(z_CR_ofmean(1)) ''],'HorizontalAlignment','left','VerticalAlignment','middle','fontsize',6);
text(z_means, [mynum2str(z_means,2) ''],'HorizontalAlignment','left','VerticalAlignment','middle','fontsize',6);
text(z_CR_ofmean, [mynum2str(z_CR_ofmean(2))''],'HorizontalAlignment','left','VerticalAlignment','middle','fontsize',6);
Produces this:
and the error:
Error using text
First two or three arguments must be numeric doubles.
Wheareas I want:
  1. Add text to each line correctly (can be any text as an example). Can you help please?

Accepted Answer

Simon Chan
Simon Chan on 26 Apr 2022
If they are horizontal lines, you can use function yline
By using this function, you can also add the text in the following example.

More Answers (1)

Bjorn Gustavsson
Bjorn Gustavsson on 26 Apr 2022
With text you specify both the x and y-coordinate of the text. For example:
th = text(14,-0.5,'text-test that will start at x: 14, y: -0.5');
So you just need to specify an/the x-location before the specification of the y-location (z_CR_ofmean).


Community Treasure Hunt

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

Start Hunting!