22

最初我可以通过以下方式将图形标题设置为粗体:

import Matplotlib.pyplot as plt

plt.title("Test",fontweight="bold")

但是一旦我使用fontname="Times New Roman"fontweight="bold"根本不会导致任何变化:

import Matplotlib.pyplot as plt

plt.title("Test",fontname="Times New Roman",fontweight="bold")

我该如何将图形标题设置为粗体?

4

3 回答 3

10

假设它已安装在您的系统上,它有自己的粗体时代字体:

plt.title("Test", fontname="Times New Roman Bold")

您可以在此处找到系统上的字体列表:如何获取当前可用于 Matplotlib 的所有字体的列表?

我有:

>>> [i for i in matplotlib.font_manager.findSystemFonts(fontpaths=None, fontext='ttf')
if 'times' in i.lower()]
['/Library/Fonts/Times New Roman.ttf',
 '/Library/Fonts/Times New Roman Italic.ttf',
 '/Library/Fonts/Times New Roman Bold Italic.ttf',
 '/Library/Fonts/Times New Roman Bold.ttf']
于 2013-09-23T14:42:08.287 回答
6

fontweight 是 fig.suptitle() 函数的参数。所以这应该对你有用, fig.suptitle("Test",fontweight='bold')

于 2020-09-15T09:14:23.663 回答
3

在 linux 和 mac 上,TImes New Roman 的粗体字体似乎比普通字体更受欢迎。这就是为什么您看不到将 hte normal 设置为粗体的更改,它已经是粗体了。

我知道这个问题很老了,但它仍然是一个问题,至少对我来说,在我的 Mac 上,当你想使用普通的时候。我找到了这个问题的一个非常简单的解决方案,由 azag0 在 github 上发布

del matplotlib.font_manager.weight_dict['roman']
matplotlib.font_manager._rebuild()

https://github.com/matplotlib/matplotlib/issues/5574

如果您这样做,您将在设置 时看到更改fontweight=bold,因为正确选择了标准。

于 2017-06-06T09:58:31.773 回答