Matlab画图插入Latex公式

Latex语言是现在使用最广泛的Tex格式,Tex这种语言具有简单排版和程序设计的功能。

不过,LaTeX比TeX更为结构化,它有很多预设模版,包含供建立索引、表格、列表等的宏和公用软件。利用Latex,即使我们不会排版和程序设计也可以生成复杂的论文规格的表格和数学公式。

Matlab画图插入Latex公式_第1张图片
我们使用matlab对数据或模型进行计算处理之后,时常会需要输出结果呈现Latex的格式,或者能方便转换成latex格式方便后续编辑。

Matlab中使用Latex大体可分为两种情境:1.使用Latex公式标注Matlab生成的各类图形;2.把Matlab的运行结果转换成Latex格式。

标注Matlab生成的图形

1. 生成图形的各类图例中添加Latex公式

Matlab生成的图形中title、xlabel、ylabel、zlabel、textbox和legend等Interpreter有三个属性:latex 、tex、none,默认是tex。首先把属性设置为latex,在Matlab中使用LaTeX语言的格式有三种:

\( LaTeX命令\)
$ LaTeX命令$
$$ LaTeX命令$$
% 在标题中插入LateX公式
figure(1);
x = 0:pi/100:2*pi;
plot(x, sin(x));
title('$\sin(x)$','interpreter','latex', 'FontSize', 18);
set(gcf, 'position', [0 0 300 300],'color',[1,1,1]);
% interpreter’ 表示所采用的解释器语法,此时需要设置为'latex'

Matlab画图插入Latex公式_第2张图片

% 在图例中插入LateX公式
figure(1);
x = 0:pi/100:2*pi;
plot(x, sin(x));
handle = legend('$\sin(x)$');
set(handle,'Interpreter','latex', 'FontSize',18)

Matlab画图插入Latex公式_第3张图片

% 在坐标轴中插入LateX公式
figure(1);
x = 0:pi/100:2*pi;
plot(x, sin(x));
xlabel('$\alpha$','interpreter','latex', 'FontSize', 18);
ylabel('$\sin(\alpha)$','interpreter','latex', 'FontSize', 18);

Matlab画图插入Latex公式_第4张图片

2. latex公式换行

第一种方式是将字符串改写成:{’ . . . ... ...’, ‘ . . . ... ...’};
第二种方式是将字符串改写成:[’ . . . ... ...’, newline, ‘ . . . ... ...’]

figure(1);
subplot(1,2,1);
% 换行方式一
title({'$fortest:\sin(x)+\alpha_1(k_1+x)+\alpha_2(k_2+x)$',...
    '$+...+\alpha_n(k_n+x)$'},'interpreter','latex', 'FontSize', 10);
subplot(1,2,2);
% 换行方式二
title(['$fortest:\sin(x)+\alpha_1(k_1+x)+\alpha_2(k_2+x)$',newline,...
    '$+...+\alpha_n(k_n+x)$'],'interpreter','latex', 'FontSize', 10);
set(gcf,'color',[1,1,1])

Matlab画图插入Latex公式_第5张图片

3. “$…$”与“$$…$$”的区别

“$…$”将字符缩小到与设定的字符一样大,即一个公式占一行。
“$$…$$”会将每一个字符都设定为预设的大小,一个公式占多行。

figure(1);
x = 0:pi/100:2*pi;
subplot(1,2,1);
plot(x, sin(x)./x);
title('$\frac{sin(x_\alpha)}{x_\alpha}$','interpreter','latex', 'FontSize', 18);
set(gca,'position',[0.05 0.1 0.4 0.7]);
subplot(1,2,2);
plot(x, sin(x));
title('$$\frac{sin(x_\alpha)}{x_\alpha}$$','interpreter','latex', 'FontSize', 18);
set(gca,'position',[0.5 0.1 0.4 0.7]);
set(gcf,'color',[1,1,1])

Matlab画图插入Latex公式_第6张图片

计算结果转换成Latex模式

对于Matlab计算出的符号运算结果,可以通过latex()函数转化成LeTeX命令格式。

由于latex()函数只对符号表达式进行转换,对于数值结果一定要通过sym()函数转化成符号格式。可同时使用latex()和sym()函数:latex(sym(i)); 其中i代表符号表达式:

syms a b c d
i = a/b+c-d^2
latex(sym(i))

结果显示:

ans = 'c+\frac{a}{b}-d^2'

另外,可以把Matlab的分析图片结果转化成Latex使用的.eps格式,以便后续使用latex进行编辑使用,有需要的话要用到Latex Markup,保存输出时点“latex”选项即将M-file转换成 text-file。

附加参考

1. Tex字符字体的设置

Matlab画图插入Latex公式_第7张图片

2. Tex字符命令对照表

Matlab画图插入Latex公式_第8张图片

3. 数学公式常用命令

Matlab画图插入Latex公式_第9张图片

参考
[1] 小思同学,Matlab中输入Latex公式,CSDN,https://blog.csdn.net/XSTX1996/article/details/81627219
[2] Thundermighty,【一个视频学会系列】Latex排版,https://www.bilibili.com/video/av39993441/
[3] zd0303,CSDN:https://blog.csdn.net/zd0303/article/details/7536967
[4] http://blog.sina.com.cn/s/blog_8fc890a20102v0sl.html

欢迎关注公众号“数学建模公会”,解锁更多建模相关教程、应用代码哦~
Matlab画图插入Latex公式_第10张图片

你可能感兴趣的:(matlab,latex,数学建模,数学建模国赛,考研)