latex interpreter sprintf issue

30 views (last 30 days)
Hi,
I would like insert text in my figure y = 10mm_x=1, I tried as follows, but it throws below error
Suggestions please !!
String scalar or character vector must have valid interpreter syntax: $Y= 10mm
text(0.7,1.05,(sprintf('$Y= 10mm\_{x} = %dmm$', i)),'FontSize',16,'Color','black','Interpreter','latex');

Accepted Answer

Voss
Voss on 15 Feb 2022
Edited: Voss on 15 Feb 2022
Since there is a backslash (for the latex format) inside the sprintf format string, you must escape it (i.e., put another backslash before it) so that sprintf() doesn't interpret it as a format specifier:
i = 1;
text(0.7,1.05,(sprintf('$Y= 10mm\\_{x} = %dmm$', i)),'FontSize',16,'Color','black','Interpreter','latex');

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!