matplotlib 图标题中的多种字体大小

balp4ylt  于 2023-10-24  发布在  其他
关注(0)|答案(3)|浏览(135)

我在IPython IDE中使用Matplotlib.pyplot绘图,并添加了一个标题:

plt.title('Mean WRFv3.5 LHF\n(September 16 - October 30, 2012)', fontsize=40)

然而,我希望第一行的大小为40,第二行的大小为18。这在matplotlib中可能吗?我看到LaTeX使用\tiny\Huge,但希望更多的控制。

a1o7rhls

a1o7rhls1#

试试看:

import matplotlib.pyplot as plt

plt.rc('text', usetex=True)
plt.title(r'\fontsize{30pt}{3em}\selectfont{}{Mean WRFv3.5 LHF\r}{\fontsize{18pt}{3em}\selectfont{}(September 16 - October 30, 2012)}')

plt.show()

\r可能希望在您的系统上成为\n
我用Joel's answer to address your question.

x759pob2

x759pob22#

不确定这是否是你想要的,但你可以添加一个suptitletext,并设置为不同的字体大小,如下所示:

plt.title('Mean WRFv3.5 LHF\n', fontsize=40)
plt.suptitle('(September 16 - October 30, 2012)\n', fontsize=18)
plt.text(0.5, 1, 'the third line', fontsize=13, ha='center')

希望这对你有帮助。

vecaoik1

vecaoik13#

从这里:https://matplotlib.org/stable/gallery/subplots_axes_and_figures/figure_title.html
你可以像这样使用它:

fig, (ax1, ax2) = plt.subplots(1, 2, layout='constrained', sharey=True)
ax1.set_title('damped')
fig.suptitle('Different types of oscillations', fontsize=16)

这样两个不同的标题就不应该互相重叠。

相关问题