J'ai téléchargé la version Graphviz 2.38
MSI et l'ai installé dans le dossier C:\Python34
, puis j'ai exécuté pip install Graphviz
, tout s'est bien passé. Dans le chemin du système, j'ai ajouté C:\Python34\bin
. Lorsque j’ai essayé d’exécuter un script de test, dans la ligne filename=dot.render(filename='test')
, j’ai reçu un message.
RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test'], make sure the Graphviz executables are on your systems' path
J'ai essayé de mettre "C:\Python34\bin\dot.exe"
dans le chemin du système, mais cela n'a pas fonctionné et j'ai même créé une nouvelle variable d'environnement "GRAPHVIZ_DOT"
avec la valeur "C:\Python34\bin\dot.exe"
, qui ne fonctionne toujours pas. J'ai essayé de désinstaller Graphviz et pip désinstaller graphviz, puis réinstallez-le et réinstallez pip, mais rien ne fonctionne.
Le message de traceback entier est:
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\graphviz\files.py", line 220, in render
proc = subprocess.Popen(cmd, startupinfo=STARTUPINFO)
File "C:\Python34\lib\subprocess.py", line 859, in __init__
restore_signals, start_new_session)
File "C:\Python34\lib\subprocess.py", line 1112, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Documents\Kissmetrics\curves and lines\eventNodes.py", line 56, in <module>
filename=dot.render(filename='test')
File "C:\Python34\lib\site-packages\graphviz\files.py", line 225, in render
'are on your systems\' path' % cmd)
RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test'], make sure the Graphviz executables are on your systems' path
Quelqu'un at-il une expérience avec cela?
Vous devriez installer le paquet graphviz sur votre système (pas seulement le paquet python). Sur Ubuntu vous devriez essayer:
Sudo apt-get install graphviz
import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'
Dans Windows, ajoutez simplement ces 2 lignes au début, où 'D:/Program Files (x86) /Graphviz2.38/bin/' est remplacé par l'adresse de l'emplacement de votre fichier bin.
Cela résout le problème.
Celui-ci a résolu le problème pour moi sur MAC :
brew install graphviz
Pour les fenêtres:
graphviz
pythonC:\Program Files (x86)\Graphviz2.38\bin
au chemin de l'utilisateur C:\Program Files (x86)\Graphviz2.38\bin\dot.exe
au chemin du systèmeCela a fonctionné pour moi!
OSX Sierra, Python 2.7, Graphviz 2.38
Utiliser pip install graphviz
et conda install graphviz
BOTH résout le problème.
pip
ne reçoit que le même problème que le vôtre et conda
ne reçoit qu'une erreur d'importation.
Essayez conda install graphviz
. J'ai eu le même problème, je l'ai résolu par la commande mentionnée dans MacOS.
Ajoutez simplement ci-dessous votre variable d’environnement (système)CHEMIN Sous Windows
C:\Fichiers de programme (x86)\Graphviz2.38\bin
là, vous pouvez trouver .exe files
Si pas travailler
Trouvez Graphviz2.38/bin dossier dans votre Program Files pas dans python lib
Ensuite, ajoutez à votreCHEMIN
Il est important de trouver un dossier contenant des fichiers .exe
Essayez d'utiliser:
conda install python-graphviz
L'exécutable graphviz est situé sur un chemin différent de celui de votre répertoire conda, si vous utilisez pip install graphviz
.
En utilisant conda install graphviz
et conda install python-graphviz
pour installer GraphViz sous Windows 10, le chemin nécessaire était C:/ProgramData/Anaconda3/Library/bin/graphviz / pour moi. C'est à dire. ajouter
import os
os.environ["PATH"] += os.pathsep + 'C:/ProgramData/Anaconda3/Library/bin/graphviz/'
résolu le problème pour moi.
J'ai eu le même problème sous Linux avec Jupyter.
Pour le résoudre, j'ai ajouté la bibliothèque de points à python sys.path
Premièrement: vérifiez si dot
est installé,
Ensuite:
trouver 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")
conda install python-graphviz
Pour Windows, installez Python Graphviz qui inclura les exécutables dans le chemin.
Après avoir installé le paquet ( link si ce n’est pas le cas), ajoutez le chemin d’accès à dot.exe en tant que nouvelle variable système.
Le chemin par défaut est:
C:\Program Files (x86)\Graphviz2.38\bin\dot.exe
Tout d'abord, vous devez utiliser pip install, puis télécharger un autre package dans http://www.graphviz.org/Download_windows.php Et ajouter l'emplacement d'installation dans le chemin environnemental, puis cela fonctionnera.
J'ai eu le même message d'erreur sur Mac OS (El Capitan), en utilisant PyCharm IDE . J'avais installé Graphviz en utilisant brassé, comme recommandé dans la réponse de RZK, et installé le paquet graphviz python en utilisant PyCharm (je pouvais Vérifiez que Graphviz a été installé correctement en essayant dot -V
dans un terminal et en obtenant: dot - graphviz version 2.40.1 (20161225.0304)
) . Pourtant, le message d'erreur apparaissait toujours lorsque j'essayais d'appeler Graphviz depuis PyCharm.
J'ai dû ajouter le chemin/usr/local/bin dans les options de PyCharm, comme recommandé dans la réponse à cette question pour résoudre le problème.
Pour les utilisateurs de Linux qui n'ont pas d'accès root et ne peuvent donc pas utiliser la commande Sudo
comme suggéré dans d'autres réponses ...
Tout d’abord, activez votre conda virtual-environment (si vous souhaitez en utiliser un) en:
source activate virtual-env-name
Ensuite, installez graphviz, même si vous l’avez déjà fait avec pip:
conda install graphviz
puis copiez le résultat de la commande suivante:
whereis dot
Dans mon cas, sa sortie est:
/home/nader/anaconda2/bin/dot
et l'ajouter à votre variable PATH. Il suffit de lancer la commande ci-dessous
nano ~/.bashrc
et ajoutez ces lignes à la fin du fichier ouvert:
PATH="/home/username/anaconda2/bin/dot:$PATH"
export PATH
maintenant appuyez sur Ctrl+O et alors Ctrl+X pour sauvegarder et quitter.
Le problème devrait être résolu maintenant.
Utilisateurs de Pycharm, veuillez noter que: Pycharm ne voit pas toujours la variable PATH identique à celle de votre terminal. Cette solution ne fonctionne pas pour Pycharm, et peut-être d'autres IDE. Mais vous pouvez résoudre ce problème en ajoutant cette ligne de code:
os.environ["PATH"] += os.pathsep + '/home/nader/anaconda2/bin'
à votre programme python. N'oublie pas de
import os
premier :)
Edit: Si vous ne voulez pas utiliser conda, vous pouvez toujours installer graphviz à partir de ici sans aucune permission root et ajouter le dossier bin à votre variable PATH. Je n'ai pas testé cela.
1) Graphviz - téléchargez décompressez dans un emplacement particulier du système (pip ne fonctionne pas dans Windows) et incluez le dossier bin dans le chemin ("Définir les variables d’environnement dans Windows" OU) défini manuellement dans chaque programme.
import os
os.environ["PATH"] += os.pathsep + 'C:/GraphViz/bin'
2) Ensuite, mettez le modèle à tracer
clf = xgb.train(params, d_train, 1000, evals=evallist, early_stopping_rounds=10)
xgb.plot_tree(clf)
plt.rcParams['figure.figsize'] = [50, 10]
plt.show()
1.installez le package Windows à partir de: https://graphviz.gitlab.io/_pages/Download/Download_windows.html et téléchargez le fichier msi.
Ajoutez les variables d'environnement 2. Ajoutez C:\Program Files (x86)\Graphviz2.38\bin au chemin d'accès utilisateur.
Ajouter C:\Program Files (x86)\Graphviz2.38\bin\dot.exe au chemin d'accès système
Redémarrez votre cahier python.
Ça va marcher.
Étape 1: Installer le binaire Graphviz
Windows:
Linux:
Étape 2: Installez le module graphviz pour python
pip:
conda:
Système d'exploitation Mojave 10.14., Python 3.6
Utiliser pip install graphviz
avait un bon retour dans le terminal, mais cela a conduit à cette erreur lorsque j'ai essayé de créer un graphique dans un cahier Jupyter. J'ai ensuite lancé brew install graphviz
, ce qui a donné une erreur dans le terminal. Ensuite, j'ai exécuté conda install graphviz
et le graphique a fonctionné.
Commentaire de @ Leighton: pip n'a que le même problème de chemin que le vôtre et conda seulement une erreur d'importation.