python中使用graphviz时,如果出现中文乱码,多半是因为没有设置fontname为支持中文显示的字体,只需要把node或者edge的fontname="Microsoft YaHei",即可正常显示:
from graphviz import Digraph
digraph=Digraph("中文图片")
digraph.node(name="a",label="木",color="#00CD66",style="filled",fontcolor="white",fontname="Microsoft YaHei")
digraph.node(name="b",label="火",color="#FF4500",style="filled",fontcolor="white",fontname="Microsoft YaHei")
digraph.node(name="c",label="土",color="#CD950C",style="filled",fontcolor="white",fontname="Microsoft YaHei")
digraph.node(name="d",label="金",color="#FAFAD2",style="filled",fontcolor="#999999",fontname="Microsoft YaHei")