gpt4 book ai didi

python - 为什么 matplotlib 不使用我提供的 .ttf 字体?

转载 作者:太空狗 更新时间:2023-10-29 21:53:25 25 4
gpt4 key购买 nike

我正在尝试在 matplotlib 中使用 TTF 字体; .ttf 文件已下载并保存在我的本地机器上。我关注了other instructions on this site使用 font_manager 选择字体;但是,我尝试使用字体属性生成的任何文本仍然以默认的 matplotlib 字体显示。

我知道 Python 确实成功地找到了字体文件,因为 prop.get_name() 和类似的命令确实显示了我想要的字体的属性——但这不是我图中显示的。有什么建议吗?

举个例子:

import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

fig, ax = plt.subplots()

prop = fm.FontProperties(fname='/Users/smith/fonts/coolfont.ttf')
ax.set_title('Text in a cool font', fontproperties=prop, size=40)

fig.show()

最佳答案

这是因为您正在使用后端。

当我尝试用我的默认后端 MacOScairo 后端做类似的事情时,它没有工作。

然而,当我切换到 aggTKagg 并运行您的示例时,自定义字体就在那里。

这里是你修改过的代码,它可以在我的机器上运行

#!/usr/bin/env python
import matplotlib
matplotlib.use( "agg" )
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

fig, ax = plt.subplots()
prop = fm.FontProperties(fname='Outwrite.ttf')
ax.set_title('Text in a cool font', fontproperties=prop, size=40)
plt.show()
plt.savefig('test.png')

生成的图像使用自定义字体。

关于python - 为什么 matplotlib 不使用我提供的 .ttf 字体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12790284/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com