1. ホーム
  2. python

[解決済み] Graphvizの実行ファイルが見つからない(Python 3.4)

2022-03-01 17:59:45

質問

Windows7でPython3.4が動いています。Pythonのインターフェイスでgraphvizを使おうとしています。 これは私が実行しようと思っているスクリプトです。

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)

実行時に以下のエラーが発生します。

RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test-output/round-table.gv'], make sure the Graphviz executables are on your systems' path

これで、正しい依存関係が正しくインストールされたことを確認しました。まず、正しい環境変数を設定することを試みました。Graphvizの実行ファイルは、以下の場所にあります。 C:\Program Files (x86)╱Graphviz2.37bin ということで、「環境変数」のセクションに移動しました。そこには2つのセクションがあります。ユーザー変数」と「システム変数」です。システム変数]の下にある パス をクリックし Edit を追加し ;C:\Program Files (x86)╱Graphviz2.37bin を文字列の末尾に追加して保存しました。これでもエラーは解除されませんでした。

次に、答えに続いて ここに記載されている pydot(実はここではpydotplusを使っています)をアンインストールして、再度インストールしましたが、やはり成功しませんでした。

何時間もこの問題を解決しようとしていますが、PATH変数全体が混乱し、イライラします。

解決方法は?

どうやら、Graphviz2.37はWindowsのPATH変数に問題があることが知られているようです。私はそれをアンインストールし、それに関連する環境変数を削除し、代わりに新しいベータ版2.39をダウンロードしてインストールしたところ、魅力的に動作するようになりました。