同じ問題が発生しました。 Anaconda(少なくともWindows版)の 'graphviz'は、PyPIのgraphvizパッケージと同じではなく、GraphvizのPythonラッパーではなく、Graphvizバイナリ自体であることが判明しました。 Condaはバイナリを "Library¥bin"フォルダにインストールします(私の場合、 "C:\ Anconda3 \ Library \ bin")。通常、 "Library \ bin"はデフォルトでシステムパス上にあるので、これは問題ありません。しかしanaconda-graphvizパッケージは、graphvizバイナリを "Library \ bin \ graphviz"というサブディレクトリに置きます。 "Library \ bin \ graphviz \ bin"にコールをリダイレクトする "Library \ bin"にバッチファイル 'dot.bat' dot.exe "と入力します。したがって、 'twopi'のようなバイナリはデフォルトではパスにありません。しかし、少なくともpydotplus(私がテストした唯一のもの)は、それらを期待しています。代わりに、Windowsレジストリ内に「レガシー」Graphvizインストールを探し、それが失敗した場合は、デフォルトのインストール場所(%PROGRAMFILES%以下)を探します。
私は2つの解決方法を見ています:graphviz.comから直接Graphvizをインストールするか、私は 'condv'を通して 'graphviz'を更新する機能を保持したいので、代わりにpydotplusの 'set_graphviz_executables'を使って実行可能ファイルへのパスを上書きしました。しかし、私が理解している限り、これはすべてのグラフでやり直さなければなりません。
import os
def conda_fix(graph):
path = os.path.join(sys.base_exec_prefix, "Library", "bin", "graphviz")
paths = ("dot", "twopi", "neato", "circo", "fdp")
paths = {p: os.path.join(path, "{}.exe".format(p)) for p in paths}
graph.set_graphviz_executables(paths)
graph = pydotplus.graph_from_data(data)
conda_fix(graph)
Image(graph.create_png())
graphviz exesをインストールしましたか?これらはPythonライブラリとは別のものです。 – benjamin
@Yah、http://www.graphviz.org/ –