我下载了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

有人有经验吗?


当前回答

这显示了一些路径问题:

pip install graphviz

所以这对我很有用:

sudo apt-get install 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

效果非常好。

OSX Sierra, Python 2.7, Graphviz 2.38

使用pip install graphviz和conda install graphviz都可以解决这个问题。

PIP只得到路径问题与您的相同,conda只得到导入错误。

MACOS - Monterey的解决方案

打开:终端 执行命令pip install graphviz 运行命令:brew install graphviz 关闭:终端 开放:水蟒(Jupyter或Spyder) 执行命令import os 操作系统。environ["PATH"] += os。pathsep + "/usr/local/Cellar/graphviz/2.49.3/bin/dot"

(你必须每次都运行这个程序,直到bug被修复。) 棘手的部分是找到。文件。这是brew安装包的位置。(但它应该类似于我给出的路径。) 通过运行测试:

import mglearn as mglearn
mglearn.plots.plot_animal_tree()

希望您现在已经准备好了!

import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'

在windows中,只需在开头添加这两行,其中'D:/Program Files (x86)/Graphviz2.38/bin/'被替换为bin文件所在的地址。

这样问题就解决了。

我使用的是windows10,我尝试在程序文件中安装graphwiz并设置路径:对我不起作用

试着

conda install -c anaconda graphviz

是行不通的。

然后试着

conda install python-graphviz

它工作了,似乎我们的python编译器无法访问Graphwiz。因此python-graphwize起作用了。 PIP安装graphviz也不工作。