gpt4 book ai didi

matlab - Matlab 绘图中注释文本框中的 Overbar(使用 Latex 作为解释器)

转载 作者:太空宇宙 更新时间:2023-11-03 19:43:46 26 4
gpt4 key购买 nike

我正在尝试编写一个简单的平面方程加上系数\bar{a}_1、a_2 和 a_3 的值,但我无法使\bar 起作用。有什么建议吗?我尝试了 $\bar{a}_{1}$ 有或没有美元,其他一切对我来说都很好,我使用了 latex 或 tex 解释器但它无法识别它。这是代码:

a1=1
a2=2
a3=3
str = {'LLSQ fit:','z=$\bar{a}_{1}$+a_2x+a_3y',sprintf('$\bar{a}_{1}$=%5.2f',a1),sprintf('a_2=%5.2f',a2),sprintf('a_3=%5.2f',a3)};
annH = annotation('textbox',[0.63 0.8 0.08 0.08],'string',str,'interpreter','latex')
set(annH,'FitBoxToText','on','fontsize', 18,'BackgroundColor',[1 1 1])

谢谢

最佳答案

我在下面列出了您的代码存在的问题,这是一个有效的代码:

str = {'LLSQ fit: ' ...
'z = $\bar{a}_{1}$ + $a_2x$ + $a_3y$' ...
['$\bar{a}_{1}$ = ' sprintf('%5.2f', a1)] ...
['$a_2$ = ' sprintf('%5.2f', a2)] ...
['$a_3$ = ' sprintf('%5.2f', a3)]};

annotation('textbox', [0.5 0.8 0.3 0.08], 'interpreter','latex', 'String', str);

原始代码有问题

  1. 你必须用 $ 符号包裹整个 latex commands:

    此代码未提供所需的输出:

    annotation('textbox', [.2 .4 .1 .1], 'interpreter','latex', 'String', 'a_2x');

    但是这个确实:

    annotation('textbox', [.2 .4 .1 .1], 'interpreter','latex', 'String', '$a_2x$');
  2. 如果您使用 sprintf,您将丢失部分字符串,因为它有另一个解释器(有解决方法,但我建议像上面那样连接字符串)

    sprintf('$\bar{a}_{1}$ = %5.2f', a1)

    将返回:

    ar{a}_{1}$ = 1.00

    latex 无法识别。 (\bsprintf 中被解释为 backspace 并删除重要的 $ 符号。)

关于matlab - Matlab 绘图中注释文本框中的 Overbar(使用 Latex 作为解释器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17119093/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com