【发布时间】:2021-06-07 05:24:28
【问题描述】:
以前有人问过这个问题,但我还没有找到任何可行的解决方案。我一直在试图弄清楚如何将 Matplotlib 图中的 默认字体 更改为 Lato。
那里有几个帖子/线程,例如1、2、3。通过这些帖子,我尝试按以下方式进行构建。首先,将我电脑中的所有字体添加到字体管理器中,如示例 2 中建议的那样。
from matplotlib import font_manager
font_dirs = [r"C:\Windows\Fonts"]
font_files = font_manager.findSystemFonts(fontpaths=font_dirs)
for font_file in font_files:
font_manager.fontManager.addfont(font_file)
result = font_manager.findfont("Lato")
print(result)
print 的输出是 --> C:\Windows\Fonts\Lato-Regular.ttf 因此,字体管理器检测到 Lato。在下一步中,我尝试了
import matplotlib as mpl
mpl.rcParams['font.family'] = 'Lato-Regular'
mpl.rcParams['font.sans-serif'] = 'Lato-Regular'
import matplotlib.pyplot as plt
plt.plot(range(0,50,10))
plt.title('Font test', size=32)
plt.show()
plt.savefig('f1.png')
现在代码可以完美运行,没有任何“DeJaVou”错误。但字体仍然是默认字体,而不是Lato。
我做错了什么?任何帮助表示赞赏!谢谢。
【问题讨论】:
-
你想改变当前情节的字体吗?
-
@David:是的,主要是。在此之后,可能会将相同的方法应用于所有子图。
标签: python matplotlib fonts