(Python)ValueError:在路径中找不到程序点
Posted
技术标签:
【中文标题】(Python)ValueError:在路径中找不到程序点【英文标题】:(Python) ValueError: Program dot not found in path 【发布时间】:2012-12-08 20:51:48 【问题描述】:我有以下问题:我在 xUbuntu 操作系统上,我正在尝试在 Flask 应用程序中使用 networkx,并且我有以下代码:
.....
import networkx as nx
......
# Creating and initializing graph object which is networkx object
hosts_graph = get_networkx_graph_object()
# Variable 'coord' where the coordinates for each node will be stored
coord = nx.pygraphviz_layout(hosts_graph, prog = 'dot')
最后一行是第 411 行。我收到以下错误:
File "/home/kiril/Documents/workfolder/omeganoc-sprint/onoc/omeganoc/grapher.py", line 411, in grouping_method
coord = nx.pygraphviz_layout(hosts_graph, prog = 'dot')
File "/usr/local/lib/python2.7/dist-packages/networkx-1.7-py2.7.egg/networkx/drawing/nx_agraph.py", line 264, in pygraphviz_layout
A.layout(prog=prog,args=args)
File "/usr/local/lib/python2.7/dist-packages/pygraphviz-1.1-py2.7-linux-x86_64.egg/pygraphviz/agraph.py", line 1301, in layout
data=self._run_prog(prog,' '.join([args,"-T",fmt]))
File "/usr/local/lib/python2.7/dist-packages/pygraphviz-1.1-py2.7-linux-x86_64.egg/pygraphviz/agraph.py", line 1248, in _run_prog
runprog=self._get_prog(prog)
File "/usr/local/lib/python2.7/dist-packages/pygraphviz-1.1-py2.7-linux-x86_64.egg/pygraphviz/agraph.py", line 1236, in _get_prog
raise ValueError("Program %s not found in path."%prog)
ValueError: Program dot not found in path.
什么可能导致这个问题?我已经安装了 networkx 和 pygraphviz,但我仍然得到这个错误。任何想法如何解决这个问题?
【问题讨论】:
【参考方案1】:如果没有 Graphviz,PyGraphviz 将无法工作。也安装它。
【讨论】:
即使你安装了 PyGraphviz,如果 PyGraphviz bin 目录没有添加到路径中,你也可能会遇到这个问题 - 我在 windows 上遇到了这个问题。 注意 - graphviz 必须使用操作系统的机制在系统范围内安装,通过 pip 安装不起作用。【参考方案2】:确保通过 Windows 安装程序安装了 Graphviz(可以从 http://www.graphviz.org/Download_windows.php 下载)。
然后将bin折叠的路径添加到系统变量“Path”中。 pygraphviz 查找的是 bin 折叠中的“dot.exe”。
如果您 pip install graphviz,它不起作用。
【讨论】:
【参考方案3】:如果您安装了 Anaconda,最简单的方法是从 CMD 运行以下命令:
conda install pydot-ng
和:
conda install graphviz
这会在路径中添加点。
【讨论】:
【参考方案4】:在 SUSE linux 中:
sudo zypper install graphviz
可能会有帮助。
【讨论】:
以上是关于(Python)ValueError:在路径中找不到程序点的主要内容,如果未能解决你的问题,请参考以下文章
MinGW gcc 在 /local/include 中找不到头文件