相关疑难解决方法(0)

绘图标签中的立式 mu:保留原始刻度字体

我有一个我认为会发生更多的问题。但是,在网上搜索了一段时间后,我还没有找到解决问题的方法。所以这里是这样的:

对于使用 matplotlib.pyplot 创建的图,我想将 SI 单位微米合并到我的 xlabel 中。然而单位微米需要是直立的。经过一番摆弄之后,我获得了所需的 xlabel。

我必须生成的代码是:

import matplotlib
import matplotlib.pyplot as plt

matplotlib.rc('text', usetex = True)
params = {'text.latex.preamble': [r'\usepackage{siunitx}', r'\usepackage{cmbright}']}
plt.rcParams.update(params)


fig = plt.figure()
ax = fig.add_subplot(1,1,1)

ax.set_xlabel('$\si{\micro \meter}$', fontsize = 16)
ax.set_ylabel("hi", fontsize = 16)

plt.savefig("test.png")
Run Code Online (Sandbox Code Playgroud)

结果如下所示: 在此处输入图片说明 千分尺正是我想要的。然而,问题是 x 和 y 刻度的字体被改变了。这是因为:

matplotlib.rc('text', usetex = True)
Run Code Online (Sandbox Code Playgroud)

如何将字体值重置为其原始值?或者如何确保在引入 tex 时字体不会改变?

作为参考,我所指的原始值如下所示: 在此处输入图片说明 除了尝试将字体恢复为其原始值之外,我还尝试了将微米合并到我的 xlabel 中的不同方法。这里出现的问题是它仍然是斜体或者它有一个粗体设置。我正在寻找的千分尺是第一个图中给出的那个。

我希望有人能帮我解决这个问题。

提前谢谢

python fonts matplotlib rc tex

7
推荐指数
1
解决办法
6915
查看次数

标签 统计

fonts ×1

matplotlib ×1

python ×1

rc ×1

tex ×1