如何在matlab的fig中显示tex公式

Matlab带有Latex解析器,能支持latex的各种符号,比如积分符号等等。Matlab图形中title、xlabel、ylabel、zlabel、textbox和legend等的Interpreter属性有三个属性:latex 、tex、none。默认为tex。当键入:
>> set(text,'Interpreter')
Matlab将返回’Interpreter’所包含的属性值:[ latex | {tex} | none ]。利用Matlab文本的Interpreter属性使我们能在图形中显示一个较为复杂的公式,例如在公式中除了有希腊字母外,还有分号、根号等数学符号。Tex的用法在Matlab的帮助文档里有详细介绍,这里主要介绍一下如何采用latex编辑公式。

在matlab中,Latex编辑公式的基本格式:
1、( LaTeX命令 )
2、$ LaTeX命令 $
3、$ $ LaTeX命令 $ $

  1. 在图象中直接加字符,很简单。

text('Interpreter','latex','String','$$\sqrt{x^2+y^2}$$','Position',[.5.5],… 'FontSize',16);

  1. 在legend里加数学字符
     h=legend('$$\sqrt{x^2+y^2}$$');
     set(h,'Interpreter','latex')

当然也可以使用( )命令。以此类推也可以对title、xlabel、ylabel、zlabel和legend等使用LaTeX命令,如:

xlabel({'$\int_0^x\!\int_ydf(u,v)$'},'Interpreter','latex')

至于LaTeX命令使用方法可以参考LaTeX教程。

另外,Matlab可以把计算结果转化成Latex格式,对于Matlab计算出的符号运算结果,可以通过latex()函数转化成LeTeX命令格式。由于latex() 函数只对符号表达式进行转换,对于数值结果一定要通过sym() 函数转化成符号结果。所以,为防止对数值结果转化出错,可同时使用latex() 和==sym()==函数:latex(sym(s)); 其中s代表符号表达式。例如:

    >>syms a b c
    >>s=a/b+c
    >>latex(s)

使用latex(s)后转化为LeTeX命令:

\frac {a}{b}+c

Tex字符在输出一些数学公式时经常使用,它只能由类型为text的对象创建。函数title、xlabel、ylabel、zlabel或text都能 创建一个text对象,因此Tex字符转义符(带“\”的字符串)经常作为这些函数的输入参数。如果要输出希腊字母,可以使用texlabel函数将希腊 字母的变量名转化为希腊字母的函数,供函数title、xlabel、ylabel、zlabel或text使用。texlabel转换MATLAB表达式为等价的Tex格式字符串。它处理希腊字母的变量名为实际显示的希腊字母字符串。希腊字母的变量名为“\”后面的字符串。

你可能感兴趣的:(matlab)