Clear Filters
Clear Filters

I can't fplot(39)

4 views (last 30 days)
Alessandro Tufano
Alessandro Tufano on 3 Nov 2018
Edited: madhan ravi on 4 Nov 2018
I'm trying to have a plot with a constant line at value y=39. I'm using function fplot() with a constant double as argument. This works for any value (e.g. fplot(38), fplot(40)) except for fplot(39). Anyone has an idea or ad alternative way to get a constant line plot on y=39. Thanks A
The error message while running fplot(39) is the following Error using symvar>isquoted (line 154) Quotes in S are not in pairs.
Error in symvar (line 49) q = isquoted(s);
Error in countvars>symvarMulti (line 17) vars = reshape(symvar(c),1,[]);
Error in countvars>symvarMulti (line 10) vars = cellfun(@symvarMulti, c, 'UniformOutput', false);
Error in countvars (line 5) n = numel(symvarMulti(outer));
Error in fplot>singleFplot (line 225) nvars = countvars(fn);
Error in fplot>@(f)singleFplot(cax,{f},limits,extraOpts,args) (line 193) hObj = cellfun(@(f) singleFplot(cax,{f},limits,extraOpts,args),fn{1},'UniformOutput',false);
Error in fplot>vectorizeFplot (line 193) hObj = cellfun(@(f) singleFplot(cax,{f},limits,extraOpts,args),fn{1},'UniformOutput',false);
Error in fplot (line 163) hObj = vectorizeFplot(cax,fn,limits,extraOpts,args);

Accepted Answer

Star Strider
Star Strider on 3 Nov 2018
The fplot function is interpreting ‘39’ as a single quote, its ASCII equivalent:
chr39 = char(39)
chr39 =
'''
Using an anonymous function plots the lines:
fplot(@(x)39+x-x)
The strange appearance avoids several lines of warning messages that would otherwise result.
  5 Comments
Steven Lord
Steven Lord on 3 Nov 2018
An addendum to John's addendum: if you're using release R2018b or later you can use yline. yline is in MATLAB, while refline is in Statistics and Machine Learning Toolbox.
madhan ravi
madhan ravi on 4 Nov 2018
Edited: madhan ravi on 4 Nov 2018
An addendum to Steven's addendum:
fplot(subs(sym('y'),39)) %does the same
NOTE:
fplot(subs(sym('x'),39)) %won't plot a vertical line
the above will work the same that's why I made a FEX for this purpose

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!