相同标签下的多个fontsize和fontweight文本

时间:2019-03-22 19:16:49

标签: python matplotlib fonts title

我有一个用matplotlibgridspec制作的情节

import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

fig = plt.figure(figsize=(11.69,8.27))

fig.text(x=0.5, y=0.97, s="'Daily metrics - {Here the 
date}", fontsize=12, ha="center")
fig.text(x=0.5, y=0.93, s= "Total of cases: 23", fontsize=13, 
ha="center")

gs = gridspec.GridSpec(nrows=3, ncols=1, height_ratios=[1,1,2], 
left=0.18)

我希望标题"Total of cases: 23"像这样:

Total of cases: **23**

,并带有另一个字体大小的数字。如何在同一个fig.text中结合使用不同的字体粗细和字体大小?对于我来说,重要的是不要将fig.text更改为plt.text

1 个答案:

答案 0 :(得分:0)

您可以通过在matplotlib中使用乳胶字体渲染来实现。这是通过"text.usetex" rc参数激活的,例如plt.rcParams["text.usetex"] = True

然后使用\textbf将数字设为粗体。可以使用here中列出的LaTeX样式控制数字的大小。我在回答中使用了\huge。其他选项是\Huge\Large\LARGE等。

import matplotlib.pyplot as plt
plt.rcParams["text.usetex"] = True
import matplotlib.gridspec as gridspec

fig = plt.figure(figsize=(8, 6))

fig.text(x=0.5, y=0.97, s="'Daily metrics - {Here the date}", fontsize=12, ha="center")
fig.text(x=0.5, y=0.93, s= r"Total of cases: {{\huge \textbf {23}}}", fontsize=13, ha="center")

plt.plot([1,2,3])

enter image description here