Python ExecutableNotFound:未能执行[';neato';,';-Tsvg';],请确保Graphviz可执行文件在您的系统上';路径
我的系统是win10(x64)。我在文件夹E:\Program Files下安装了Graphviz 2.44.1,然后我将E:\Program Files\Graphviz 2.44.1\bin添加到用户变量路径,并将E:\Program Files\Graphviz 2.44.1\bin\dot.exe添加到系统变量路径。我还使用pip安装了graphviz。通过这样做,我可以在PyCharm中运行我的代码Python ExecutableNotFound:未能执行[';neato';,';-Tsvg';],请确保Graphviz可执行文件在您的系统上';路径,python,windows,jupyter-notebook,anaconda,graphviz,Python,Windows,Jupyter Notebook,Anaconda,Graphviz,我的系统是win10(x64)。我在文件夹E:\Program Files下安装了Graphviz 2.44.1,然后我将E:\Program Files\Graphviz 2.44.1\bin添加到用户变量路径,并将E:\Program Files\Graphviz 2.44.1\bin\dot.exe添加到系统变量路径。我还使用pip安装了graphviz。通过这样做,我可以在PyCharm中运行我的代码 from graphviz import Digraph import heapq a
from graphviz import Digraph
import heapq as pq
graph = {
0: [3],
1: [0, 4],
2: [1, 4],
3: [1],
4: [3],
5: [2, 4],
}
dot = Digraph(engine="neato", comment='Direct graph example')
dot.attr(overlap="false", splines="true")
pos = {
0: '0,1!',
1: '1,1!',
2: '2,1!',
3: '0,0!',
4: '1,0!',
5: '2,0!',
}
for v in graph.keys():
dot.node(str(v), pos=pos[v])
for v in graph.keys():
for w in graph[v]:
dot.edge(str(v), str(w))
dot
我的代码的输出:
但是,当我在Jupyter笔记本中运行它时,仍然存在一个错误“ExecutableNotFound:failed to execute['neato','-Tsvg'],请确保Graphviz可执行文件位于您的系统路径上”。我注意到有人建议手动添加路径,如下所示:
import os
os.environ["PATH"] += os.pathsep + 'E:\\Program Files\\Graphviz 2.44.1\\bin'
然而,它仍然不起作用。我试过几次重新安装它,但都没用。我真的需要一些帮助。将
dot.attr(overlap=“false”,spline=“true”)
更改为dot.attr(overlap=“false”;spline=“true”)
(因此;
而不是,
)。注意,最好将输出作为代码而不是图像发布。如果更改符号,将出现语法错误“SyntaxError:无效语法”。明白了,下次我会注意的。我理解的语法错误,使用的语法是正确的(在测试时,我在不应该出现的点文件中键入了一个,
。“我在系统变量路径中添加了[…]E:\Program Files\Graphviz 2.44.1\bin\dot.exe”-这没有意义。您不能将完全限定的可执行文件名添加到环境变量PATH
中。它只保存目录。无论如何,由于我们看不到您的环境变量,我们几乎无法提供帮助,尽管看起来问题确实存在。此外,这个问题可能也离题了。明白了,但我只是按照说明去做,我最关心的是为什么它可以在Pycharm中正常使用,但jupyter笔记本仍然存在问题。这真令人困惑。不过还是谢谢你的回复。