通过以下方式使用 LaTeXbm包rcParams

通过以下方式使用 LaTeXbm包rcParams

我有以下子图(由mn给定索引):

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

通过以下方式使用 LaTeXbmrcParams

您可以告诉 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}$')

生成结果:

在此处输入图片描述

相关内容