如何将下载的truetypefont添加到matplotlib.font_manager的ttflist?

时间:2018-06-08 08:28:03

标签: python python-3.x matplotlib networkx

我有一个花哨的truetype字体,我想要显示我的networkx节点标签(中文字符)。

import matplotlib.font_manager as fm

我用

print([f.name for f in fm.fontManager.ttflist])

获取我以后可以在

中使用的可用字体列表
networkx.draw(myGraph, font_family = "someFontFromTheList").

这是我绘制图表的方式:

import networkx as nx
import matplotlib.pyplot as plt

G = nx.Graph()
G.add_edge("火", "水")
nx.draw(G, with_labels = True, font_family = "TakaoPGothic", node_size = 1600, font_size = 25, node_color = "lightblue")
plt.savefig("graph.png")

“TakaoPGothic”字体是我在列表中找到的唯一包含CJK字符的字体。通过使用它,我得到至少this

现在如何在/path/to/my/font.ttf使用我自己的字体?我想要走的路是以某种方式将它添加到上面提到的matplotlib字体列表中?

1 个答案:

答案 0 :(得分:0)

好吧,我自己解决了这个问题:how to set up a custom font with custom path to matplotlib global font?

图表现在看起来像这样:

this