String scalar or character vector must have valid interpreter syntax?

9 views (last 30 days)
Hello.
I am trying to make a legend for a plot, but i get the error 'String scalar or character vector must have valid interpreter syntax'. The code is showed below.
m = 4;
legend(['Lagrange, {\itp}_{' num2str(m) '}({\itx})'],'Interpolated points','Discrete points','location','best') ;
Can someone tell me what to do? :-)
  2 Comments
Stephen23
Stephen23 on 16 Dec 2021
What MATLAB version are you using?
plot(1:5,rand(5,3))
m = 4;
t = ['Lagrange, {\itp}_{' num2str(m) '}({\itx})']
t = 'Lagrange, {\itp}_{4}({\itx})'
legend(t,'Interpolated points','Discrete points','location','best')

Sign in to comment.

Answers (1)

Nirupama
Nirupama on 26 Feb 2024
Edited: Nirupama on 26 Feb 2024
I ran the following lines of code in MATLAB R2020b and did it not throw any error (as you mentioned in the comments that you were using MATLAB R2020b):
plot(1:5,rand(5,3))
m = 4;
legend(['Lagrange, {\itp}_{' num2str(m) '}({\itx})'],'Interpolated points','Discrete points','location','best')
I do not think it an issue related to MATLAB R2020b. I would recommend you to clear the workspace and command window and retry executing the above lines of code.
Hope this helps!

Community Treasure Hunt

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

Start Hunting!