xline issue with adding a number to the line through the labels option

12 views (last 30 days)
Is there a reason why the xline (or yline) functions won't accept a number converted to a string
c=b(3); %Breakpoint
cs=num2str(c)
class(cs)
xline(ax3,c,cs);
cs =
'125.7048'
ans =
'char'
Error using xline
Invalid parameter/value pair arguments.

Accepted Answer

Aditya
Aditya on 4 Jun 2024
Hi Jason,
In MATLAB, the xline function is designed to add vertical lines to a plot and allows for customization through various parameters, including adding a label directly to the line. However, this customization needs to be done using 'Name,Value' pairs. When you attempt to pass the string representation of a number directly as an argument, without specifying it as part of a 'Name,Value' pair, MATLAB does not recognize it as a valid input, leading to the "Invalid parameter/value pair arguments" error.
To add a label to your line correctly, you need to use the 'Label' option followed by the string you wish to use as the label. Here's how you can adjust your code:
% Correct way to add Label
xline(ax3,c,'Label',cs);
I hope this clears up the confusion!
  3 Comments
Jason
Jason on 4 Jun 2024
and to further add, reading again it says this:
To create a line with a label, you must also specify the line style. The default line style is a solid line, '-'.
x = linspace(0,6,100);
y = exp(x);
plot(x,y)
xline(4.5,'-',{'Acceptable','Limit'});
So it is possible without the 'Label' but you need to specify the line stsyle, so actually this worked also.
xline(ax3,c,'-',cs);

Sign in to comment.

More Answers (0)

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Tags

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!