web-dev-qa-db-ja.com

Graphvizの実行可能ファイルが見つかりません(Python 3.4)

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)

実行時に次のエラーが表示されます。

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.37\binにあるため、環境変数セクションに移動しました。ユーザー変数とシステム変数の2つのセクションがあります。 [システム変数]の下でPathをクリックし、Editをクリックして追加; C:\ Programファイル(x86)\ Graphviz2.37\binを文字列の最後に保存します。これはエラーをクリアしませんでした。

次に、答えに従って ここで指定 私はpydotをアンインストールし(実際ここでpydotplusを使用)、再度インストールしましたが、まだ成功していません。

私はこれを修正するために何時間も努力してきましたが、PATH変数全体は混乱を招き、イライラさせられます。

13
Morteza R

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

4
Morteza R

私の場合(Win10、Anaconda3、Jupyterノートブック)"conda install graphviz" PATHに追加する必要があります:C:\Users\username\Anaconda3\Library\bin\graphviz

PATHを変更するにはControl Panel > System and Security > System > Advanced System Settings > Environment Variables > Path > Edit > New

16
Silvia Bakalova

Ubuntu 16.04でもこの問題が発生しました。

すでに実行したpipインストールに加えてSudo apt-get install graphvizを実行することで修正されました。

11
tom4everitt

Win10のanacondaを搭載したjupyter(ipython)ノートブックでは、conda install graphvizでgraphvizをインストールした後、pip install graphvizで問題を解決しました。

8
Plory.Truck

Mac OSは言及されていないため、OS X Yosemiteでも同じ問題が発生したことを付け加えます。私が見つけた解決策はbrew install graphviz

これは問題を解決しましたが、このリストの他の回答のいずれかを編集しただけではいけないかどうかはわかりません。それらはすべて同じ回答のようであるため、Pythonライブラリ。

5
Veggiet

c:\ Program Files(x86)\ Graphviz2.38\binをPATHに追加する場合、IDEスパイダーなどの環境を閉じて再起動する必要があります。 "RuntimeError:を解決します。 Graphviz実行可能ファイルがシステムのパス上にあることを確認してください」

5
JackChen

この問題を解決するには、graphviz2.38を正常にインストールしたら、PATH変数をシステムパスに追加します。システム変数の下で、[パス]をクリックし、[編集]をクリックして追加します; C:\ Program Files(x86)\ Graphviz2.38 \文字列の最後までビンに移動して保存します。その後、pythonIDEをspyperのように再起動すると、うまく機能します。

Spyderを閉じてから再起動することを忘れないでください。

4
JackCHEN

https://graphviz.gitlab.io/_pages/Download/Download_windows.htmlから直接インストールし、Windowsパスに含めて解決しました:

C:\Program Files (x86)\Graphviz2.38\bin

C:\Program Files (x86)\Graphviz2.38

Windowsを再起動した後

4
Aris

Windows 8.1&python 2.7の場合、以下の手順に従って問題を修正しました

1 graphviz-2.38.msiをダウンロードしてインストールします http://www.graphviz.org/pub/graphviz/stable/windows/graphviz-2.38.msi

2。パス変数を設定する

  • [コントロールパネル]> [システムとセキュリティ]> [システム]> [システムの詳細設定]> [環境変数]> [パス]> [編集]
  • 「C:\ Program Files(x86)\ Graphviz2.38\bin」を追加します
2
Jayani Sumudini

Win10を使用している場合は、Graphvizをインストールし、次のコマンドを使用してパスを追加します。

import os
os.environ["PATH"] += os.pathsep + 'C:\Program Files (x86)\Graphviz2.38/bin/'
1
Regi Mathew

Windows 10でも同じ問題が発生しました。

最初に、graphviz-2.38.0次のコマンドで問題なく...

install -c anaconda graphviz=2.38.0

次に、次のコマンドを使用してpydotplusを問題なくインストールしました...

install -c conda-forge pydotplus

その後、意思決定ツリーを視覚化するステップに着いたとき、{InvocationException: GraphViz's executables not found}...

C:\Users\admin\Anaconda3\lib\site-packages\pydotplus\graphviz.py in create(self, prog, format)
   1958             if self.progs is None:
   1959                 raise InvocationException(
-> 1960                     'GraphViz\'s executables not found')
   1961 
   1962         if prog not in self.progs:

InvocationException: GraphViz's executables not found

私の場合、それを修正するために必要なことは、ユーザーgraphviz環境変数にPATH実行可能ファイルの環境パスを配置するだけで、これが修正されました。 YOUR.exeファイルがあります:)

C:\Users\admin\Anaconda3\pkgs\graphviz-2.38.0-4\Library\bin\graphviz
1
njgiv

私はWindows 10を使用していることに注意してください。次のいくつかは、Windowsまたはオペレーティングシステムの他のバージョンに適用される場合と適用されない場合があります。

**注2:**
「システム上のGraphviz binファイルのアドレス」は、C:\ Program Files(x86)\ Graphviz2.38\binまたはGraphvizをインストールした他のパス。

Graphvizだけでなく、Jupyterで使用する他の外部EXEファイルにも問題があります。
理由は、jupyterがパッケージをインポートしたいときに、作業ディレクトリでそれを見つけるために探し、パッケージが見つからなかった場合にそのようなエラーを返します。
これに取り組むことは次のとおりです。
1)Graphvizがシステムにインストールされているかどうかを確認します。インストールされていない場合は、次からダウンロードしてインストールできます。

https://graphviz.gitlab.io/_pages/Download/Download_windows.html
次にインストールします。 Graphvizをインストールする場合、インストールする場所(フォルダー)に注意してください。使用時に上記のエラーが表示される場合

import graphviz

次に、いくつかのオプションがあります。

2)ipynbの.exeファイルを呼び出すことができます

import os
os.environ["PATH"] += os.pathsep + r'the Graphviz bin file address on your system'

私が経験しているのは、作業しているのと同じipynbでのみ機能し、ノートブックを開くたびにこのコード行を呼び出す必要があるということです。

3)Jupyterでexeファイルを検索する場合は、環境パスを設定する必要があります。
Windows 10では、次の操作を実行できます。
コントロールパネル>システムとセキュリティ>システム>システムの詳細設定>環境変数>パス>編集>新規
そして、「システム上のGraphviz binファイルアドレス」を追加します。Windows8以下では、次の場所に移動します。
コントロールパネル>システムとセキュリティ>システム>システムの詳細設定>環境変数
次に、;(セミコロン)+ "システム上のGraphviz binファイルアドレス"をパス文字列の最後に追加します
注:マシンを再起動することを忘れないでください。

4)これが機能しない場合でも、次の変数を定義します。
[コントロールパネル]> [システムとセキュリティ]> [システム]> [システムの詳細設定]> [環境変数]

Start to define an environmental variable

次に、変数を次のように定義します。 Remember to name the variable Graphviz

変数には必ずGraphvizという名前を付けてください。最後にPCを再起動し、動作することを願っています。

1
Afshin Amiri

インストールするだけ

conda install graphviz

次にインストールする

conda install -c conda-forge pydotplus
1
Shersha Fn

Ubuntu(14.04)とJupyterで同じ問題が発生しました。

それを解決するために、ドットライブラリをpython sys.pathに追加しました

最初:ドットがインストールされているかどうかを確認し、

次に、彼のパスを見つけますwhereis dot->/local/notebook/miniconda2/envs/ik2/bin/dot

最後にpython script:sys.path.append( "/ local/notebook/miniconda2/envs/ik2/bin/dot")

0
nono

Pydotの代わりにpydotplusを使用してください

  1. 検索:C:\Users\zhangqianyuan\AppData\Local\Programs\Python\Python36\Lib\site-packages\pydotplus

  2. 開いた graphviz.py

  3. 行1925-行1972を見つけ、関数を見つけます。

    def create(self, prog=None, format='ps'):
    
  4. 関数検索で:

    if prog not in self.progs:
        raise InvocationException(
            'GraphViz\'s executable "%s" not found' % prog)
    
    if not os.path.exists(self.progs[prog]) or \
            not os.path.isfile(self.progs[prog]):
        raise InvocationException(
            'GraphViz\'s executable "{}" is not'
            ' a file or doesn\'t exist'.format(self.progs[prog])
        )
    
  5. 2つのブロックの間にこれを追加します(Graphvizの実行可能パス):

      self.progs[prog] = "C:/Program Files (x86)/Graphviz2.38/bin/gvedit.exe"`
    
  6. 結果を追加した後:

    if prog not in self.progs:
        raise InvocationException(
            'GraphViz\'s executable "%s" not found' % prog)
    
    self.progs[prog] = "C:/Program Files (x86)/Graphviz2.38/bin/gvedit.exe"
    
    if not os.path.exists(self.progs[prog]) or \
            not os.path.isfile(self.progs[prog]):
        raise InvocationException(
            'GraphViz\'s executable "{}" is not'
            ' a file or doesn\'t exist'.format(self.progs[prog])
        )
    
  7. 変更したファイルを保存すると、正常に実行できます。

  8. pNGファイルは機能しないため、bmpファイルとして保存することをお勧めします。 picture is here

0
张乾元

Anaconda 3でWindows 10 Python 3.6を使用していますが、同じ問題に直面しています。

私は次のことを順番に行うことで動作させました:

  1. Anacondaターミナルから:pip install pydotplus
  2. Anacondaターミナルから:conda install pydotplus
  3. Anacondaターミナルから:pip install graphviz
  4. Anacondaターミナルから:conda install graphviz
  5. Windows環境Varialbes、PATHに行き、Anacondaのgraphvizディレクトリの下にdot.exeファイルの場所を追加しました。

その後はうまくいきました。

0
mazazino