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

其他回答

将graphviz添加到系统路径

Windows -编辑系统环境变量。 选择环境变量。 选择路径-新建 添加graphviz的路径

例: C:\Users\AppData\Local\Continuum\anaconda3\Library\bin\graphviz

对于没有root权限的Linux用户,因此不能像其他答案中建议的那样使用sudo命令…

首先,激活你的conda虚拟环境(如果你想使用的话):

source activate virtual-env-name

然后安装graphviz,即使你已经使用pip完成了:

conda install graphviz

然后复制以下命令的结果:

whereis dot

在我的例子中,它的输出是:

/home/nader/anaconda2/bin/dot

并将其添加到PATH变量中。只需运行下面的命令

nano ~/.bashrc

并在打开的文件的末尾添加这些行:

PATH="/home/username/anaconda2/bin/dot:$PATH"
export PATH

现在按Ctrl+O,然后按Ctrl+X保存并退出。

问题现在应该解决了。

Pycharm用户请注意:Pycharm并不总是看到与您的终端相同的PATH变量。此解决方案不适用于Pycharm或其他ide。但是你可以通过添加这行代码来修复这个问题:

os.environ["PATH"] += os.pathsep + '/home/nader/anaconda2/bin'

到你的python程序。别忘了

import os

第一:)

编辑:如果你不想使用conda,你仍然可以从这里安装graphviz,不需要任何根权限,并将bin文件夹添加到PATH变量中。我没有测试这个。

Windows:

安装windows包从:https://graphviz.gitlab.io/_pages/Download/Download_windows.html 安装python graphviz包 添加“用户路径”为“C:\Program Files (x86)\ Graphviz2.38\bin” 将C:\Program Files (x86)\ Graphviz2.38\bin\dot.exe添加到“系统路径”

这对我很管用!

步骤1:安装Graphviz二进制文件

窗口:

从http://www.graphviz.org/download/下载Graphviz 将以下内容添加到PATH环境变量(提到已安装的graphviz版本): C:\Program Files (x86)\ Graphviz2.38\bin C:\Program Files (x86)\ Graphviz2.38\bin\dot.exe 关闭任何打开的Juypter笔记本电脑和命令提示符 重新启动Jupyter / cmd提示符并测试

Linux:

Sudo apt-get update Sudo apt-get安装graphviz 或者从http://www.graphviz.org/download/手动构建

步骤2:安装python的graphviz模块

皮普:

PIP安装graphviz

第二:

康达安装图形可视化

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()

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