Warning: Unable to interpret LaTeX string

2 次查看(过去 30 天)
hi. i want to make a text annotation including this text:
eval(['text1=''\underline{Row #', num2str(j), '}'';'])
annotation('textbox', [a b c d] , 'String', text1, 'VerticalAlignment', 'middle', 'HorizontalAlignment', 'center', 'Color', 'k', 'EdgeColor', 'k', 'BackgroundColor', 'white', 'FontWeight', 'bold', 'FontSize', 15, 'interpreter','latex');
i get an error: Warning: Unable to interpret LaTeX string "\underline{Row #1}"
how can i solve this?
thanks. Noa
  5 个评论
Matt Fig
Matt Fig 2012-9-20
编辑:Matt Fig 2012-9-20
Jan, it should be:
text1 = sprintf('\\underline{Row #%d}', j);
But there is more to it than that. See my answer below.
Jan
Jan 2012-9-20
@noa: And? Did you follow the advice to read "help sprintf" to find out, that a \\ is required to create a \ in the output string? Or do you try that it is my turn to find this out?
@Matt: Thanks.

请先登录,再进行评论。

回答(2 个)

Matt Fig
Matt Fig 2012-9-20
编辑:Matt Fig 2012-9-20
First of all you really should learn to use SPRINTF instead of EVAL. Please look at the help for SPRINTF and do not use EVAL in your code.
J = 5;
text1 = sprintf('$$\\underline{Row\\#\\;%i }$$',J);
text(.5,.5,text1,'interpreter','latex')
Or if J is a floating point number and not an integer:
J = 5.34;
text1 = sprintf('$$\\underline{Row\\#\\;%2.2f }$$',J);
text(.5,.5,text1,'interpreter','latex')

Jan
Jan 2012-9-20
编辑:Jan 2012-9-20
text(0.5, 0.5, '\underline{Hello World}','interp','latex')
I cannot test this currently, but Daniel's answer sounds, like this is not working.
  2 个评论
noa
noa 2012-9-20
??? Subscript indices must either be real positive integers or logicals.
Jan
Jan 2012-9-20
@noa: This happens, when you use "text" as name of a variable:
clear('text');
text(0.5, 0.5, 'hello');
text = 'any string';
text(0.5, 0.5, 'hello');
Solution: do not use names of Matlab functions as variables.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Environment and Settings 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by