MATLAB多行标题中的乳胶

MATLAB多行标题中的乳胶,matlab,latex,matlab-figure,Matlab,Latex,Matlab Figure,我需要在MATLAB绘图中创建一个两行标题,在每行中使用LaTeX title({'first line','second line'}) 有效,但不适用于乳胶。在一行MATLAB标题中,LaTeX的理解如示例所示: title(['$y=x^2$'],'interpreter','latex') 我已经尝试了很多东西,但我还没有设法让MATLAB在这些行中生成一个包含乳胶的多行标题 如其他答案所示,R2017a版本之前,使用单元阵列, 强制左对齐。这似乎在R2017b中得到了解决 可以在L

我需要在MATLAB绘图中创建一个两行标题,在每行中使用LaTeX

title({'first line','second line'})
有效,但不适用于乳胶。在一行MATLAB标题中,LaTeX的理解如示例所示:

title(['$y=x^2$'],'interpreter','latex')
我已经尝试了很多东西,但我还没有设法让MATLAB在这些行中生成一个包含乳胶的多行标题

如其他答案所示,R2017a版本之前,使用单元阵列, 强制左对齐。这似乎在R2017b中得到了解决

可以在LaTeX表格环境中包装标题:

figure;
plot((1:5).^2);
title('\begin{tabular}{c} first_line \\ second_line \end{tabular}', ...
      'interpreter', 'latex')
这将允许您选择文本对齐方式。对于右对齐和左对齐的文本,分别用
{r}
{l}
替换
{c}

可以使用新行字符
'\n'
显式地为创建字符串

title(sprintf('$y=x^3$\n$sin(x)$'), 'interpreter', 'latex');
如果你跑

title({'$y=x^2$','$y=x^2$'},'interpreter','latex')

您将获得一个两行标题,标题格式正确。

也许您试图执行一些格式错误的LaTeX格式?如果仍有问题,请尝试发布实际失败的LaTeX命令。另外,张贴你正在使用哪个版本的MATLAB。是的,比其他解决方案更干净。干得好。这个被接受的答案允许用户选择文本对齐方式(在他的例子中是居中对齐),而上面的答案没有。使用单元阵列将强制(通常不希望的)左对齐。这可能是一个错误。在R2020b中使用单元格数组使用居中对齐。