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.
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.
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
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
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.
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 "
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.
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.
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
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
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/'
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
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:
Puis définissez une variable comme ceci:
N'oubliez pas de nommer la variable Graphviz. Enfin, redémarrez votre PC et espérez que cela fonctionne.
Il suffit d'installer
conda install graphviz
puis installez
conda install -c conda-forge pydotplus
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")
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:
a bien fonctionné par la suite.