欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python graphviz 安装以及中文乱码问题

程序员文章站 2022-04-26 22:24:58
...

一、graphviz安装
下载地址: https://graphviz.org/_pages/Download/Download_windows.html
python graphviz 安装以及中文乱码问题
这上边有两种文件,两种都可以使用, 只不过 .msi这个文件是软件,可直接双击安装,
tar.gz可直接解压,自己去环境变量中配置
测试命令: dot -version
python graphviz 安装以及中文乱码问题
这样算是成功了, 然后进入Anconda promat中pip install graphviz,之后在python的base环境中可以正常使用, 但是在虚拟环境中还是不能正常使用,出现如下问题:
python graphviz 安装以及中文乱码问题
os.environ["PATH"] += os.pathsep + 'D:/User/sdma/software/Anaconda/bin'
添加上上述这句就正常了, 后边的D盘路径是我的graphvizd的安装路径,你需要将其改成你自己的安装路径

二、中文乱码问题
如下发的代码中的斜体部分,在添加节点和边的时候需要设定字体,之后就可以正常显示

fontname="Microsoft YaHei"

import os
from graphviz import Digraph
mpl.rcParams['font.sans-serif'] = ['Arial Unicode MS']

os.environ["PATH"] += os.pathsep + 'D:/User/sdma/software/Anaconda/bin'
def draw_graph(wdls, heads, relation):
    g = Digraph('测试图片')

    g.node(name='Root')
    for word in wdls:
        g.node(name=word, fontname="Microsoft YaHei")

    for i in range(len(wdls)):
        if relation[i] not in ['HED']:
            g.edge(wdls[i], heads[i], label=relation[i], fontname="Microsoft YaHei")
        else:
            if heads[i] == 'Root':
                g.edge(wdls[i], 'Root', label=relation[i], fontname="Microsoft YaHei")
            else:
                g.edge(heads[i], 'Root', label=relation[i], fontname="Microsoft YaHei")

    g.view()
    
相关标签: graphviz