如何使图例标题的一部分变为粗体(而不是整个图例标题)

时间:2019-05-14 14:55:01

标签: python matplotlib

我有这段代码,我试图仅使字符串的一部分变为粗体,而不是整个图例字符串。我该怎么办?

我尝试使用“ \ 033 [1m”(开始)和“ \ 033 [0; 0m”(结束)”以及plt.legend(prop = dict(weight ='bold')),但是再次将整个字符串加粗,但这只是其中的一部分。下面是一个示例:

import matplotlib
import matplotlib.pyplot as plt

plt.plot([1,2,3], [4,5,6])
plt.legend(['Test [bold]'])

plt.show()

在第二组括号内,我希望“ bold”实际上是粗体,而不是Test。谢谢

1 个答案:

答案 0 :(得分:4)

matplotlib可以渲染LaTeX!因此,您可以只使用\bf标签,并加上$标记来表示LaTeX表达式:

import matplotlib
import matplotlib.pyplot as plt

plt.plot([1,2,3], [4,5,6])
plt.legend([r'Test $\bf{bold}$'])

plt.show()

enter image description here