使用 Matplotlib 的 LaTeX 进行数学排版

Beginner

This tutorial is from open-source community. Access the source code

简介

在本教程中,我们将学习如何使用 Matplotlib 的内部 LaTeX 解析器和布局引擎来创建数学文本。我们将使用 Python 编程语言来编写代码。

虚拟机使用提示

虚拟机启动完成后,点击左上角切换到“笔记本”标签,以访问 Jupyter Notebook 进行练习。

有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。

如果你在学习过程中遇到问题,请随时向 Labby 提问。课程结束后提供反馈,我们将立即为你解决问题。

导入库

在这一步中,我们将导入必要的库——matplotlib。

import matplotlib.pyplot as plt

创建图形

在这一步中,我们将使用 subplots() 函数创建一个图形和一个轴对象。

fig, ax = plt.subplots()

添加绘图

在这一步中,我们将使用 plot() 函数向轴对象添加一个绘图。

ax.plot([1, 2, 3], label=r'$\sqrt{x^2}$')
ax.legend()

设置标签

在这一步中,我们将使用 set_xlabel()set_ylabel() 函数来设置 x 轴和 y 轴的标签。

ax.set_xlabel(r'$\Delta_i^j$', fontsize=20)
ax.set_ylabel(r'$\Delta_{i+1}^j$', fontsize=20)

设置标题

在这一步中,我们将使用 set_title() 函数为绘图设置标题。

ax.set_title(r'$\Delta_i^j \hspace{0.4} \mathrm{versus} \hspace{0.4} '
             r'\Delta_{i+1}^j$', fontsize=20)

添加文本

在这一步中,我们将使用 text() 函数向绘图添加文本。

tex = r'$\mathcal{R}\prod_{i=\alpha_{i+1}}^\infty a_i\sin(2 \pi f x_i)$'
ax.text(1, 1.6, tex, fontsize=20, va='bottom')

调整布局

在这一步中,我们将使用 tight_layout() 函数来调整绘图的布局。

fig.tight_layout()

显示绘图

在这一步中,我们将使用 show() 函数来显示绘图。

plt.show()

总结

在本教程中,我们学习了如何使用 Matplotlib 的内部 LaTeX 解析器和布局引擎来创建数学文本。我们还学习了如何创建绘图、添加标签、标题、文本以及调整布局。本教程可作为在 Matplotlib 中创建带有数学文本的绘图的参考。