"RuntimeError: assurez-vous que les exécutables Graphviz sont sur le chemin de votre système" après l'installation de Graphviz 2.38

138

J'ai téléchargé la Graphviz 2.38version MSI et installé sous dossier C:\Python34, puis je cours pip install Graphviz, tout s'est bien passé. Dans le chemin du système, j'ai ajouté C:\Python34\bin. Quand j'ai essayé d'exécuter un script de test, en 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 une valeur "C:\Python34\bin\dot.exe", qui ne fonctionnait toujours pas. J'ai essayé de désinstaller Graphviz pip uninstall graphviz, puis de le réinstaller et de le réinstaller, mais rien ne fonctionne.

L'ensemble du message de retraçage 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 en a-t-il une expérience?

liga810
la source

Réponses:

97
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 votre fichier bin.

Cela résout le problème.

Aprameyo Roy
la source
9
travaillé sous Windows, j'ai téléchargé graphviz-2.38.zip à partir d'ici graphviz.gitlab.io/_pages/Download/Download_windows.html . Décompressez-le et placez-le dans le dossier mentionné
user3046442
Cela fonctionne pour moi. J'ai essayé d'ajouter cela aux variables d'environnement utilisateur et système, mais cela ne fonctionne pas, seule votre solution fonctionne pour moi.
Tom
cela a fonctionné pour moi aussi, mais cela a jeté une autre erreur avant de travailler. Pour une raison quelconque, cela m'a donné une configuration côte à côte ....- erreur. J'ai dû réinstaller en plus le package redistribuable Microsoft Visual C ++ 2008 (x86). Si quelqu'un a le même problème, voici le lien: [ microsoft.com/de-DE/download/details.aspx?id=29]
Marco
J'ai utilisé chocolatey pour installer graphvizchoco install -y graphviz
Nissan
90

Vous devez installer le package graphviz dans votre système (pas seulement le package python). Sur Ubuntu, vous devriez essayer:

sudo apt-get install graphviz
kame
la source
Si cela ne fonctionne pas (il indique que le paquet est référencé mais pas là ou quelque chose comme ça) lancez sudo apt-get updatepour mettre à jour apt-get et lui dire quels paquets sont là.
Pro Q
Si vous êtes dans un conteneur Docker (comme moi), j'étais déjà à rootet seulement nécessaireapt-get install graphviz
the775
79

Celui-ci a résolu le problème pour moi sur MAC :

  brew install graphviz
Rouzbeh
la source
2
Pour mac, il semble que ce soit la meilleure option. À moins que vous ne souhaitiez utiliser MacPorts et installer graphviz à partir d'ici: graphviz.org/Download_macos.php .
AlexG
1
Merci, cela a fonctionné sur mon MAC. J'ai essayé d'installer à la fois pip et conda mais cela n'a pas fonctionné.
Catbuilts
Comment puis-je trouver mon dossier bin dans lequel j'ai graphviz. J'ai ce problème et je tue vraiment en ce moment. Je viens de vérifier que j'ai graphviz 2.38.
Herc01 le
55

Pour les fenêtres:

  1. Installez le package Windows à partir de: https://graphviz.gitlab.io/_pages/Download/Download_windows.html
  2. Installer le graphvizpackage python
  3. Ajouter C:\Program Files (x86)\Graphviz2.38\binau chemin utilisateur
  4. Ajouter C:\Program Files (x86)\Graphviz2.38\bin\dot.exeau chemin système

Cela a fonctionné pour moi!

Jyotsna_b
la source
15
Fermez également votre "cmd" dans lequel s'exécute le notebook jupyter. Le CMD existant en cours d'exécution n'attrape pas les nouvelles modifications des variables d'environnement.
Rohit Nandi
Cela n'a pas fonctionné pour moi jusqu'à ce que je redémarre le système
Mohammad Nazari
Cela a parfaitement fonctionné. Il fallait juste redémarrer le portable. Merci.
Amresh Giri
21

Essayez d'utiliser:

conda install python-graphviz

L'exécutable graphviz se trouve sur un chemin différent de votre répertoire conda, si vous utilisez pip install graphviz.

Abishek
la source
Conda install graphviztravaillé sur les fenêtres! rien d'autre ne semble fonctionner: \
Joel Carneiro
14

OSX Sierra, Python 2.7, Graphviz 2.38

L'utilisation de pip install graphvizet conda install graphvizBOTH résout le problème.

pipn'obtient que le problème de chemin comme le vôtre et condan'obtient qu'une erreur d'importation.

Leighton
la source
SEULEMENT cela a fonctionné pour moi. après avoir tout essayé. Merci.
Meghna Natraj
Conda install graphviztravaillé sur les fenêtres! rien d'autre ne semble fonctionner: \
Joel Carneiro
10

Ajoutez simplement ci-dessous à votre PATH de variable environnementale (système) sous Windows

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

là, vous pouvez trouver des fichiers .exe

Si ça ne marche pas

Trouvez le dossier Graphviz2.38 / bin dans vos fichiers de programme et non dans python lib

Ensuite, ajoutez à votre PATH

Il est important de trouver un dossier contenant des fichiers .exe

JessieB
la source
il semble que seul votre message puisse résoudre mon problème ... win10 enterprise edition, jupyter notebook, py 3.6
Travis
10

Étape 1: Installez le binaire Graphviz

Les fenêtres:

  1. Téléchargez Graphviz depuis http://www.graphviz.org/download/
  2. Ajoutez ci-dessous à la variable d'environnement PATH (mentionnez la version de graphviz installée):
    • C: \ Program Files (x86) \ Graphviz2.38 \ bin
    • C: \ Program Files (x86) \ Graphviz2.38 \ bin \ dot.exe
  3. Fermez tout bloc-notes Juypter ouvert et l'invite de commande
  4. Redémarrez l'invite Jupyter / cmd et testez

Linux:

  1. sudo apt-get mise à jour
  2. sudo apt-get installer graphviz
  3. ou créez-le manuellement à partir de http://www.graphviz.org/download/

Étape 2: Installez le module graphviz pour python

pépin:

  • pip installer graphviz

conda:

  • conda installer graphviz
Chankey Pathak
la source
1
Résolu pour moi sur winzoz
rakwaht
1
Excellente explication! Merci ~
Bright Chang le
8

Essayez conda install graphviz. J'ai eu le même problème, je l'ai résolu par la commande mentionnée sous MacOS.

Ajayramesh
la source
1
Conda install graphviztravaillé sur les fenêtres! rien d'autre ne semble fonctionner: \
Joel Carneiro
8

En utilisant conda install graphvizet conda install python-graphvizpour installer GraphViz sur Windows10, le chemin nécessaire était C: / ProgramData / Anaconda3 / Library / bin / graphviz / pour moi. Ie ajouter

import os
os.environ["PATH"] += os.pathsep + 'C:/ProgramData/Anaconda3/Library/bin/graphviz/'

résolu le problème pour moi.

rosa b.
la source
6
conda install python-graphviz

Pour Windows, installez le Python Graphviz qui inclura les exécutables dans le chemin.

abhishek
la source
1
Conda install graphviztravaillé sur les fenêtres! rien d'autre ne semble fonctionner: \
Joel Carneiro
6

Sur Ubuntu Linux, cela a résolu le problème pour moi:

pip install graphviz
sudo apt-get install graphviz

Vous pouvez également essayer à la conda install -c conda-forge graphvizplace de pip si vous utilisez Anaconda.

mots pour
la source
1
Cela a également fonctionné pour moi dans WSL sous Windows 10. L'installation à l'aide de pip n'était pas suffisante.
Nerxis
6

Lors de la résolution de ce problème pour moi-même, j'ai utilisé ce didacticiel GitHub , qui a analysé la cause de ce problème. Si nous lisons entre les lignes, cela indique qu'il a besoin du système ainsi que du graphe python . En plus de conda install, nous aurions besoin d'exécuter:

conda install -c conda-forge python-graphviz

Puis redémarrez le noyau; il fonctionne comme un charme.

Jaya
la source
4

1) Graphviz - téléchargez unzip à un endroit 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()
user41986
la source
3

Après avoir installé le package ( lien si vous ne l'avez pas fait), ajoutez le chemin vers dot.exe en tant que nouvelle variable système.

Le chemin par défaut est:

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

entrez la description de l'image ici

typhon04
la source
2

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

Tout d'abord: vérifiez si dot est installé,

Puis:
trouver son cheminwhereis dot -> / local / notebook / miniconda2 / envs / ik2 / bin / dot

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

non non
la source
15
Sur Linux, je viens de le faire sudo apt-get install graphviz(après l'avoir fait pip install graphviz) et après cela, cela a fonctionné.
mots pour
@wordsforthewise Votre commentaire doit être une réponse. Résolu le problème pour moi
Riken Shah
@wordsforthewise c'est la réponse!
SeF
2

J'ai eu le même message d'erreur sur Mac OS (El Capitan), en utilisant l'IDE PyCharm. J'avais installé Graphviz en utilisant brew, comme recommandé dans la réponse de RZK, et installé le package graphviz python en utilisant PyCharm (je pouvais vérifier que Graphviz était correctement installé en essayant dot -Vdans un terminal et en obtenant:dot - graphviz version 2.40.1 (20161225.0304) . Pourtant, je recevais toujours le message d'erreur en essayant d'appeler Graphviz à partir de PyCharm.

J'ai dû ajouter le chemin / usr / local / bin dans les options PyCharm, comme recommandé dans la réponse à cette question pour résoudre le problème.

gratte-ciel
la source
2

Cela montre un problème de chemin:

pip install graphviz

Donc, cela a fonctionné pour moi:

sudo apt-get install graphviz
Varat Vohra
la source
2

Je suis sous macOS Catalina 10.15.3 et j'ai eu une erreur similaire: ExecutableNotFound: failed to execute ['dot', '-Tsvg'], make sure the Graphviz executables are on your systems' PATH

Corrigé avec:

pip3 install graphviz ET brew install graphviz

Notez que le pip3 installne renverra que le message de réussite Successfully installed graphviz-0.13.2, nous devons donc toujours exécuter brew installpour obtenir graphviz 2.42.3 (à compter du 10 mars 2020, 18 heures).

Keane
la source
1

Pour les utilisateurs Linux qui n'ont pas d'accès root et ne peuvent donc pas utiliser la sudocommande comme suggéré dans d'autres réponses ...

Tout d'abord, activez votre environnement virtuel conda (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 ajoutez-le à votre variable PATH. Exécutez simplement 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+ Opuis sur Ctrl+ Xpour enregistrer et quitter.

Le problème devrait être résolu maintenant.

Utilisateurs de Pycharm, veuillez noter: Pycharm ne voit pas toujours la variable PATH de la même manière que 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

première :)

Edit: Si vous ne souhaitez pas utiliser conda, vous pouvez toujours installer graphviz à partir d' ici sans aucune autorisation root et ajouter le dossier bin à votre variable PATH. Je n'ai pas testé cela.

NKSHELL
la source
et si whereis dotne produit rien mais dot:? J'utilise PyCharm sur Windows pour me connecter au serveur Ubuntu 16.04 et je n'arrive pas à trouver le dossier bin nécessaire à ajouteros.environ["PATH"] += os.pathsep + '...'
bit_scientist
Reportez-vous plutôt à mon numéro publié ici
bit_scientist
1

1.installez le package Windows à partir de: https://graphviz.gitlab.io/_pages/Download/Download_windows.html et téléchargez le fichier msi

Ajouter des variables d'environnement 2. Ajouter C: \ Program Files (x86) \ Graphviz2.38 \ bin au chemin utilisateur

  1. Ajoutez C: \ Program Files (x86) \ Graphviz2.38 \ bin \ dot.exe au chemin système

  2. Redémarrez votre bloc-notes python.

Ça va marcher.

Roli
la source
1

Ajouter graphviz au chemin système

  1. Windows - Modifiez les variables d'environnement système.
  2. Choisissez les variables d'environnement.
  3. Sélectionnez Chemin - Nouveau
  4. Ajouter le chemin de graphviz

Ex: C: \ Users \ AppData \ Local \ Continuum \ anaconda3 \ Library \ bin \ graphviz

Kranthi Kumar Valaboju
la source
0

Système d'exploitation Mojave 10.14., Python 3.6

L'utilisation a pip install graphvizeu de bons retours dans le terminal, mais a conduit à cette erreur lorsque j'ai essayé de créer un graphique dans un notebook Jupyter. J'ai ensuite couru brew install graphviz, ce qui a donné une erreur dans le terminal. Puis j'ai couruconda install graphviz et le graphique a fonctionné.

Du commentaire de @ Leighton: pip ne reçoit que le problème de chemin comme le vôtre et conda ne reçoit qu'une erreur d'importation.

Mac Strelioff
la source
0
import os
os.environ["PATH"] += os.pathsep + "/Macintosh HD⁩/anaconda3⁩/lib⁩/⁨python3.7⁩/site-packages⁩/sphinx⁩/templates⁩/graphviz"

Cela a résolu le problème PATH sur MAC pour moi!

Antonio Piscopo
la source
0

Si vous n'utilisez pas Conda mais Vanilla Python, 'brew install graphviz' fonctionne.

Bhaskar
la source
0
#Write this on anaconda prompt in admin mode
conda install -c anaconda graphviz
conda install -c conda-forge python-graphviz
conda install -c conda-forge/label/broken python-graphviz
conda install -c conda-forge/label/cf201901 python-graphviz
conda install -c conda-forge/label/cf202003 python-graphviz

#check dot -v in window's cmd prompt
C:\WINDOWS\system32>dot -V
dot - graphviz version 2.38.0 (20140413.2041)
(this means graphviz installed successfully)

#Add path to sys and user eve variables
PATH
C:\Anaconda3\pkgs\graphviz-2.38-hfd603c8_2\Library\bin
(search bin folder of graphviz and then copy n paste path in env variables)

#Re-run all cmds in jyupter notebook
#if error occurs (less chances)
#then 
#Restart anaconda and again run all cmds in jyupter notebook
eg.
import graphviz as gp
with open("tree.dot") as f:
    dot_read=f.read()
display(gp.Source(dot_read))
Priya
la source
0

essayez de taper le code suivant dans l'invite anaconda un par un.

cela a fonctionné pour moi.

Source: https://anaconda.org/conda-forge/python-graphviz

conda install -c conda-forge python-graphviz
conda install -c conda-forge/label/broken python-graphviz
conda install -c conda-forge/label/cf201901 python-graphviz
conda install -c conda-forge/label/cf202003 python-graphviz 
Chirag Palan
la source
-2

essayer de faire cela dans python import sys! conda install --yes --prefix {sys.prefix} graphviz import graphviz

Roli
la source
Veuillez ajouter plus de détails à votre réponse, par exemple pourquoi cela
résoudrait