当我用pydot运行一个非常简单的代码时
import pydot
graph = pydot.Dot(graph_type='graph')
for i in range(3):
edge = pydot.Edge("king", "lord%d" % i)
graph.add_edge(edge)
vassal_num = 0
for i in range(3):
for j in range(2):
edge = pydot.Edge("lord%d" % i, "vassal%d" % vassal_num)
graph.add_edge(edge)
vassal_num += 1
graph.write_png('example1_graph.png')
Run Code Online (Sandbox Code Playgroud)
它打印出错误信息:
Couldn't import dot_parser, loading of dot files will not be possible.
Run Code Online (Sandbox Code Playgroud)
我正在使用python 2.7.3
我在Windows 7上运行Python3.4.我正在尝试使用graphviz的Python接口.这是我打算运行的脚本:
from graphviz import Digraph
import pydotplus
dot = Digraph(comment='The Round Table')
dot.node('A', 'King Arthur')
dot.node('B', 'Sir Bedevere the Wise')
dot.node('L', 'Sir Lancelot the Brave')
dot.edges(['AB', 'AL'])
dot.edge('B', 'L', constraint='false')
print(dot.source)
dot.render('test-output/round-table.gv', view=True)
Run Code Online (Sandbox Code Playgroud)
我在运行时收到以下错误:
RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test-output/round-table.gv'], make sure the Graphviz executables are on your systems' path
Run Code Online (Sandbox Code Playgroud)
现在我确信我已正确安装了正确的依赖项.我首先尝试设置正确的环境变量.graphviz可执行文件位于C:\ Program Files(x86)\ Graphviz2.37\bin,所以我转到了Environment Variables部分.那里有两个部分:用户变量和系统变量.在系统变量下我单击路径然后单击Edit并添加; C:\ Program Files(x86)\ Graphviz2.37\bin到字符串的末尾并保存.这并没有清除错误.
然后,按照这里给出的答案我卸载了pydot(实际上我在这里使用pydotplus)并重新安装它,但仍然没有成功.
我一直在努力解决这个问题,而整个PATH变量只是令人困惑和令人沮丧.
我尝试运行此示例进行决策树学习,但收到以下错误消息:
文件"coco.py",第18行,在graph.write_pdf("iris.pdf")文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pydot.py" ,第1602行,在lambda路径中,f = frmt,prog = self.prog:self.write(path,format = f,prog = prog))文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/ python2.7/site-packages/pydot.py",第1696行,写入dot_fd.write(self.create(prog,format))文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2. 7/site-packages/pydot.py",第1727行,创建'未找到GraphViz的可执行文件''pydot.InvocationException:找不到GraphViz的可执行文件
我看到这篇关于类似错误的帖子,但即使我按照他们的解决方案(卸载然后以相反的顺序重新安装graphviz和pydot)问题仍在继续......我正在使用MacOS(Yosemite).
有任何想法吗?很感激帮助.
我希望能够在Python中创建图形决策树,我目前正在尝试安装两者pydot和graphviz.
我使用Anaconda作为我的环境(以及Spyder),并尝试运行以下代码行
conda install -c https://conda.binstar.org/t/TOKEN/j14r pydot
Run Code Online (Sandbox Code Playgroud)
结果
Error: unknown host: http://repo.continuum.io/pkgs/pro/win-32/
Error: unknown host: http://repo.continuum.io/pkgs/free/win-32/
Error: unknown host: https://conda.binstar.org/t/TOKEN/j14r/win-32/
Error: No packages found matching: pydot
Run Code Online (Sandbox Code Playgroud)
我也试过使用pip install pydot并pip install graphviz得到类似的结果:
Downloading/unpacking pydot
Cannot fetch index base URL https://pypi.python.org/simple/
Could not find any downloads that satisfy the requirement pydot
Cleaning up...
No distributions at all found for pydot
Storing complete log in [...]
Run Code Online (Sandbox Code Playgroud)
我在试图弄清楚如何解决这个问题时感到非常无聊,所以我希望那里的任何人都可以给我一些提示.
谢谢
我试图使用Spyder的Graphviz(通过Anaconda安装).我无法理解执行此操作所需的内容以及如何加载包,设置变量等.
我直接采用新的Python方法,Graphviz和Spyder用户会很棒!
另外,除了创建和运行Graphviz之外,如何使用预生成的.gv文件从python运行Graphviz?
我正在尝试使用Graphviz,但收到错误消息:
graphviz.backend.ExecutableNotFound: failed to execute ['dot', '-Tpdf', '-O', 'test-output/aoc.gv.pdf'], make sure the Graphviz executables are on your systems' PATH
Run Code Online (Sandbox Code Playgroud)
我正在运行的代码是从文档中剪切并粘贴的:
from graphviz import Digraph, Graph
dot = Digraph(comment='The Round Table')
dot.node('A', 'King Arthur')
dot.node('B', 'Sir Bedevere the Wise')
dot.node('L', 'Sir Lancelot the Brave')
dot.edges(['AB', 'AL'])
dot.edge('B', 'L', constraint='false')
dot.render('test-output/aoc.gv.pdf')
Run Code Online (Sandbox Code Playgroud)
文件将输出到正确的文件夹,文件就在那里,有 170 字节,但无法打开。我尝试过其他扩展,例如“gv”,但它们也不起作用。我使用的最新版本Graphviz是 0.10.1,我尝试在 PC 上打开此文件,但它在 PC 上也不起作用(我有一台 Mac)。这个问题类似于
找不到 Graphviz 的可执行文件(Python 3.4)
和
为什么 pydot 在 Windows 8 中无法找到 GraphViz 的可执行文件?
然而,我理解这些帖子存在重大障碍。第一,我对Python如何在计算机上执行知之甚少,所以我什至不知道什么是环境变量。其次,当他们引用计算机的路径时,我只能假设他们正在谈论正在执行模块的文件的目录Graphviz,但我不确定这一点。所以我添加了这行代码:
import sys …Run Code Online (Sandbox Code Playgroud) graphviz ×6
pydot ×4
python ×4
anaconda ×2
python-3.x ×2
path ×1
python-2.7 ×1
scipy ×1
spyder ×1