我有以下子图(由m
和n
给定索引):
ax = g.subplots[m,n]
我尝试将所有 Latex 表达式 $1 sigma \pm 0.1$ 设置为粗体 Latex。
我在 matplotlib 脚本的开头进行了设置:
plt.rcParams['text.usetex'] = True
我做了不同的尝试:
ax.set_title("$\mathbf{1 \sigma \pm} "+str('0.1')+"$", fontsize=18)
ax.set_title("$\\mathbf{1 \sigma \pm} "+str('0.1')+"$", fontsize=18)
ax.set_title("$\\mathbf{1} \boldsymbol{\sigma} \pm "+str('0.1')+"$", fontsize=18)
ax.set_title("$\\mathbf{1} \\boldsymbol{\sigma} \pm "+str('0.1')+"$", fontsize=18)
但这些解决方案都不起作用。任何帮助都很好。问候
答案1
通过以下方式使用 LaTeXbm
包rcParams
您可以告诉 Matplotlib 使用 LaTeX,除了一些美观设置(值得一看)之外,您还可以告诉它使用 LaTeX 做一些事情,例如给它一个简短的序言,其中包括您可以导入包。对于大胆的数学来说,最好的包是包bm
(据我所知)。因此,MWE 是
import matplotlib as mpl
rc_fonts = {
"text.usetex": True,
'text.latex.preview': True, # Gives correct legend alignment.
'mathtext.default': 'regular',
'text.latex.preamble': [r"""\usepackage{bm}"""],
}
mpl.rcParams.update(rc_fonts)
import matplotlib.pylab as plt
plt.clf()
fig, axs = plt.subplots(1, 2)
ax = axs[0]
ax.set_title(r'$\bm{1 \sigma \pm 1}$')
但是,我注意到您想要调整字体大小。同样,最好通过 来完成此操作rcParams
,因此,为了演示更全面的rcParams
配置以获得最佳效果,我建议:
import matplotlib as mpl
rc_fonts = {
"text.usetex": True,
'text.latex.preview': True,
"font.size": 20,
'axes.titlesize': 22,
"axes.labelsize": 22,
"legend.fontsize": 20,
"xtick.labelsize": 20,
"ytick.labelsize": 20,
'figure.titlesize': 22,
'mathtext.default': 'regular',
'text.latex.preamble': [r"""\usepackage{bm}"""],
}
mpl.rcParams.update(rc_fonts)
import matplotlib.pylab as plt
plt.clf()
fig, axs = plt.subplots(1, 2)
ax = axs[0]
ax.set_title(r'$\bm{1 \sigma \pm 1}$')
生成结果: