我下载了Graphviz 2.38 MSI版本,安装在C:\Python34文件夹下,然后运行pip安装Graphviz,一切顺利。在系统路径中我添加了C:\Python34\bin。当我试图运行一个测试脚本,在行filename= .render(filename='test'),我得到了一个消息

 RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test'], make sure the Graphviz executables are on your systems' path

我尝试将“C:\Python34\bin\dot.exe”放在系统路径中,但它不起作用,我甚至创建了一个新的环境变量“GRAPHVIZ_DOT”,其值为“C:\Python34\bin\dot.exe”,仍然不起作用。我尝试卸载Graphviz和pip uninstall Graphviz,然后重新安装它和pip install,但没有任何工作。

整个回溯消息是:

Traceback (most recent call last):
  File "C:\Python34\lib\site-packages\graphviz\files.py", line 220, in render
    proc = subprocess.Popen(cmd, startupinfo=STARTUPINFO)
  File "C:\Python34\lib\subprocess.py", line 859, in __init__
    restore_signals, start_new_session)
  File "C:\Python34\lib\subprocess.py", line 1112, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\Documents\Kissmetrics\curves and lines\eventNodes.py", line 56, in <module>
    filename=dot.render(filename='test')
  File "C:\Python34\lib\site-packages\graphviz\files.py", line 225, in render
    'are on your systems\' path' % cmd)
RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test'], make sure the Graphviz executables are on your systems' path

有人有经验吗?


当前回答

1-首先向下下载它(图形可视化2.38)。

2-安装org.graphviz.Graphviz-2.38-graphviz-2.38。

3-现在添加“C:\Program Files (x86)\Graphviz2.38\bin”和“C:\Program Files (x86)\Graphviz2.38\bin\dot.exe”到这样的路径 注意:在Windows 8中必须使用;C:\程序文件;D:\用户;E:\文件\

其他回答

在为自己解决这个问题时,我使用了这个GitHub教程,它分析了这个问题的原因。如果我们从字里行间读出来,它说它需要system以及python graph viz。除了conda install之外,我们还需要运行:

conda install -c conda-forge python-graphviz

然后重新启动内核;这招很管用。

尝试使用:

Conda Install python-graphviz

如果使用pip install graphviz, graphviz可执行文件位于与conda目录不同的路径上。

1) Graphviz -在系统的特定位置下载解压缩(pip在windows中不起作用),并在每个程序中手动设置的路径(' set environment variables in windows ' OR)中包含bin文件夹

import os
os.environ["PATH"] += os.pathsep + 'C:/GraphViz/bin'

2)然后将模型放到图中

clf = xgb.train(params, d_train, 1000, evals=evallist, early_stopping_rounds=10)
xgb.plot_tree(clf)
plt.rcParams['figure.figsize'] = [50, 10]
plt.show()

对于windows,这两个命令适用于我,在以管理员身份运行的power shell中。

PIP安装graphviz Choco安装graphviz

Mac & Big Sur。Python 3.8.6 w/vs code。虽然它应该包含在图表包中,但我不得不手动安装graphviz。

(mymltools) ➜  infrastructure git:(master) pip list
Package    Version
---------- -------
diagrams   0.18.0
graphviz   0.13.2
Jinja2     2.11.2
MarkupSafe 1.1.1
pip        20.3.2
setuptools 51.0.0
wheel      0.36.2

运行图表失败。然后手动运行

pipenv install graphviz

效果非常好。