matplotlib 中 LaTeX 轴标签的粗体字重

2022-01-24 00:00:00 python matplotlib latex

问题描述

matplotlib 中,您可以将轴标签的文本设置为粗体

In matplotlib you can make the text of an axis label bold by

plt.xlabel('foo',fontweight='bold')

你也可以在正确的后端使用 LaTeX

You can also use LaTeX with the right backend

plt.xlabel(r'$phi$')

然而,当你将它们组合在一起时,数学文本不再是粗体了

When you combine them however, the math text is not bold anymore

plt.xlabel(r'$phi$',fontweight='bold')

以下 LaTeX 命令似乎也没有任何效果

Nor do the following LaTeX commands seem to have any effect

plt.xlabel(r'$f phi$')
plt.xlabel(r'$mathbf{phi}$')

如何在我的轴标签中添加粗体 $phi$?


解决方案

很遗憾,您不能使用粗体字体来加粗符号,请参阅 this question on tex.stackexchange.

Unfortunately you can't bold symbols using the bold font, see this question on tex.stackexchange.

正如答案所暗示的,您可以使用 oldsymbol 来加粗 phi:

As the answer suggests, you could use oldsymbol to bold phi:

r'$oldsymbol{phi}$'

您需要将 amsmath 加载到 TeX 序言中:

You'll need to load amsmath into the TeX preamble:

matplotlib.rc('text', usetex=True)
matplotlib.rcParams['text.latex.preamble']=[r"usepackage{amsmath}"]

相关文章