如何在 matplotlib 绘图中删除 LaTeX 样式数学中的随机不需要的空格?

matplotlibpythondata visualization

LaTeX 会忽略您输入的空格,并按照数学文本中的方式使用间距。如果您想要不同的间距样式,可以使用以下四个命令

  • \; – 粗间距
  • \: – 中等间距
  • \, – 细间距
  • \! – 负细间距

要删除 matplotlib 绘图中 LaTeX 样式数学中的随机不需要的空格,我们可以使用"\!",这将减少额外的间距。

让我们举一个例子来了解它是如何工作的。我们将有两个子图,然后我们将在两个子图的文本框中添加一个复杂的数学方程(使用 LaTex)。但是,我们将在一个方程中使用粗空格,在另一个方程中将其替换为细空格,以显示它们在输出屏幕上的显示方式。

示例

from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

plt.subplot(211)
plt.text(0.4, 0.4, r'$\sum_{n=1}^{\infty}\; \frac{-e^{i\pi}}{2^n}!\left
[a^2+\delta ^2- \frac{\pi}{2} \right ]$', fontsize=16, color='r')
plt.title("With thick space")

plt.subplot(212)
plt.text(0.4, 0.4, r'$\sum_{n=1}^{\infty}\! \frac{-e^{i\pi}}{2^n}!\left
[a^2+\delta ^2- \frac{\pi}{2} \right ]$', fontsize=16, color='r')
plt.title("With thin space")

plt.show()

输出

它将产生以下输出

请注意"Σ (sigma)"符号后的间距差异。在第一种情况下,我们使用了粗空格 (\;),而在第二种情况下,我们使用了细空格 (\!) 来减少额外的间距。


相关文章