web-dev-qa-db-fra.com

Les exécutables de Graphviz sont introuvables (Python 3.4)

J'exécute Python3.4 sur Windows 7. J'essaie d'utiliser l'interface Python pour graphviz. C'est un script que j'ai l'intention de lancer:

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)

J'obtiens l'erreur suivante au moment de l'exécution: 

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

Maintenant, je suis sûr d'avoir correctement installé les dépendances correctes. J'ai d'abord essayé de définir les variables d'environnement correctes. Les exécutables de graphviz sont situés dans C:\Program Files (x86)\Graphviz2.37\bin, je suis donc allé à la section Variables d'environnement. Il y a deux sections: Variables utilisateur et Variables système. Sous Variables système, j'ai cliqué sur Path, puis sur Edit et ajouté ; C:\Program Files (x86)\Graphviz2.37\bin à la fin de la chaîne et enregistré. Cela n'a pas effacé l'erreur.

Ensuite, en suivant la réponse donnée ici j’ai désinstallé pydot (en fait j’utilise pydotplus ici) et je l’ai réinstallé, mais toujours sans succès. 

Cela fait des heures que j'essaie de résoudre ce problème et toute la variable variable PATH est source de confusion et de frustration.

10
Morteza R

Comme il apparaît, Graphviz2.37 est connu pour avoir des problèmes avec la variable PATH sur Windows. Je l'ai désinstallé, supprimé les variables d'environnement qui lui sont associées et à la place, j'ai téléchargé et installé la version bêta plus récente à partir d'ici et cela fonctionne maintenant comme un charme.

4
Morteza R

Dans mon cas (Win10, Anaconda3, bloc-notes Jupyter) après "conda install graphviz" je dois ajouter à la voie PATH: C:\Users\username\Anaconda3\Library\bin\graphviz

Pour modifier PATH goto Control Panel > System and Security > System > Advanced System Settings > Environment Variables > Path > Edit > New

11
Silvia Bakalova

Sur le portable jupyter (ipython) avec anaconda dans win10, j'ai résolu le problème par conda install graphviz après avoir installé graphviz par pip install graphviz

7
Plory.Truck

J'ai également eu ce problème sur Ubuntu 16.04.

Corrigé en exécutant Sudo apt-get install graphviz en plus de l'installation du pip que j'avais déjà effectuée.

6
tom4everitt

lorsque vous ajoutez C:\Program Files (x86)\Graphviz2.38\bin à PATH, vous devez fermer votre environnement IDE tel que spyder et redémarrer, vous résolvez "RuntimeError: assurez-vous que les exécutables Graphviz sont sur le chemin de vos systèmes "

5
JackChen

Pour résoudre ce problème, lorsque vous installez graphviz2.38 avec succès, ajoutez ensuite votre variable PATH à chemin système. Sous Variables système, vous pouvez cliquer sur Chemin, puis sur Modifier et ajouter; C:\Program Files (x86)\Graphviz2.38\bin à la fin de la chaîne et enregistré.Après cela, redémarrez votre pythonIDE comme spyper, puis cela fonctionnera bien.

N'oubliez pas de fermer Spyder puis de redémarrer.

4
JackCHEN

Comme Mac OS n’a pas été mentionné, j’ajouterai que j’avais le même problème sous OS X Yosemite, la solution que j’ai trouvée était de faire brew install graphviz

Cela résout le problème, ne sachant pas si je n'aurais pas dû simplement modifier l'une des autres réponses de cette liste, car elles semblent toutes être la même réponse, il suffit d'installer un paquet officiel en plus de la bibliothèque Python.

4
Veggiet

Je l'ai résolu en installant directement à partir de https://graphviz.gitlab.io/_pages/Download/Download_windows.html et en incluant dans le chemin Windows:

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

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

Après avoir redémarré Windows 

3
Aris

Pour windows 8.1 et python 2.7, j'ai résolu le problème en suivant les étapes ci-dessous

1 . Télécharger et installer graphviz-2.38.msi http://www.graphviz.org/pub/graphviz/stable/windows/graphviz-2.38.msi

2 Définir la variable de chemin

  • Panneau de configuration> Système et sécurité> Système> Paramètres système avancés> Variables d'environnement> Chemin> Modifier
  • ajoutez 'C:\Program Files (x86)\Graphviz2.38\bin'
2
Jayani Sumudini

Si vous êtes sur Win10, installez Graphviz puis utilisez la commande suivante pour ajouter le chemin.

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

J'ai eu le même problème avec Windows 10.

D'abord, j'ai installé graphviz-2.38.0 avec la commande suivante sans aucun problème ...

install -c anaconda graphviz=2.38.0

Deuxièmement, j'ai installé pydotplus avec la commande suivante sans aucun problème ...

install -c conda-forge pydotplus

Après cela, lorsque j'ai eu le temps de visualiser mon arbre de décision, le problème suivant avec {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

Dans mon cas, tout ce que je devais faire pour résoudre ce problème consistait à définir le chemin d’environnement des exécutables graphviz dans ma variable d’environnement utilisateur PATH, ce qui a été résolu. Assurez-vous simplement que c’est le chemin où se trouvent les fichiers YOUR.exe :)

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

Veuillez noter que j'utilise Windows 10. Certains des éléments suivants peuvent ou non s'appliquer à d'autres versions de Windows ou de systèmes d'exploitation:

** Note 2: ** 
"L’adresse du fichier bin Graphviz sur votre système" peut être C:\Program Files (x86)\Graphviz2.38\bin ou n’importe quel autre chemin d’accès où Graphviz est installé.

Nous avons un problème non seulement avec Graphviz mais aussi avec d’autres fichiers EXE externes que nous voulons utiliser dans Jupyter.
La raison en est que lorsque jupyter souhaite importer un package, il le trouve dans le répertoire de travail et le recherche échouant, il renvoie de telles erreurs.
Ce que nous pouvons faire, c'est aborder ceci comme suit:
1) vérifiez si Graphviz est installé sur votre système et si ce n’est pas le cas, vous pouvez le télécharger et l’installer à partir de:

https://graphviz.gitlab.io/_pages/Download/Download_windows.html
puis installez-le. Lorsque vous installez Graphviz, n'oubliez pas où (dans quel dossier) vous l'installez . Si vous voyez l'erreur ci-dessus lorsque vous utilisez 

import graphviz

alors vous avez plusieurs options:

2) vous pouvez appeler le fichier .exe dans le ipynb via 

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

D'après mon expérience, cela ne fonctionne que pour le même ipynb que je travaille et chaque fois que j'ouvre le cahier, je dois appeler cette ligne de code .

3) Si vous voulez que Jupyter trouve le fichier exe, vous devez définir le chemin d’environnement.
Dans Windows 10, vous pouvez faire ceci en allant à:
Panneau de configuration> Système et sécurité> Système> Paramètres système avancés> Variables d'environnement> Chemin> Modifier> Nouveau 
et ajoutez ensuite "l'adresse du fichier bin Graphviz sur votre système" Sous Windows 8 ou version antérieure, accédez à:
Panneau de configuration> Système et sécurité> Système> Paramètres système avancés> Variables d'environnement 
puis ajoutez le; (point-virgule) + "l'adresse du fichier bin Graphviz sur votre système" à la fin du chemin
Remarque: pensez à redémarrer votre ordinateur .

4) et même cela ne fonctionne pas, définissez une variable allant à:
Panneau de configuration> Système et sécurité> Système> Paramètres système avancés> Variables d'environnement, puis:

 Start to define an environmental variable

Puis définissez une variable comme ceci:  Remember to name the variable Graphviz

N'oubliez pas de nommer la variable Graphviz. Enfin, redémarrez votre PC et espérez que cela fonctionne.

1
Afshin Amiri

Il suffit d'installer 

conda install graphviz

puis installez

conda install -c conda-forge pydotplus
1
Shersha Fn

J'ai eu le même problème sur Ubuntu (14.04) avec Jupyter.

Pour le résoudre, j'ai ajouté la bibliothèque de points à python sys.path

Premièrement: vérifier si dot est installé,

Puis: Trouve son chemin whereis dot ->/local/notebook/miniconda2/envs/ik2/bin/dot

Enfin en script python: sys.path.append ("/ local/notebook/miniconda2/envs/ik2/bin/dot")

0
nono

J'utilise Windows 10, Python 3.6 sur Anaconda 3 et j'ai le même problème.

Je l'ai fait fonctionner en procédant comme suit:

  1. Depuis Anaconda Terminal: pip install pydotplus
  2. Depuis le terminal Anaconda: conda install pydotplus
  3. Depuis Anaconda Terminal: pip install graphviz
  4. Depuis Anaconda Terminal: conda install graphviz
  5. Je suis allé dans l'environnement Windows Varialbes, PATH, et j'ai ajouté l'emplacement de mon fichier dot.exe dans le répertoire graphviz d'Anaconda.

a bien fonctionné par la suite.

0
mazazino