"RuntimeError: переконайтеся, що виконувані файли Graphviz знаходяться на шляху вашої системи" після встановлення Graphviz 2.38


138

Я завантажив Graphviz 2.38версію MSI і встановив під папкою C:\Python34, потім запустив pip install Graphviz, все пройшло добре. Я додав шлях до системи C:\Python34\bin. Коли я спробував запустити тестовий сценарій, в черзі filename=dot.render(filename='test'), я отримав повідомлення

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

Я намагався поставити "C:\Python34\bin\dot.exe"шлях до системи, але це не спрацювало, і я навіть створив нову змінну середовища "GRAPHVIZ_DOT"зі значенням "C:\Python34\bin\dot.exe", все ще не працюючи. Я спробував видалити Graphviz, а pip uninstall graphvizпотім перевстановити його та встановити pip знову, але нічого не працює.

Ціле повідомлення про зворотний зворотній зв'язок:

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

Хтось має з цим досвід?

Відповіді:


97
import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'

У Windows просто додайте ці 2 рядки на початку, де "D: / програмні файли (x86) /Graphviz2.38/bin/" замінено адресою, де знаходиться ваш файл біна.

Це вирішує проблему.


9
працював у Windows, я завантажив звідси graphviz-2.38.zip graphviz.gitlab.io/_pages/Download/Download_windows.html . Розпакуйте його та помістіть у нього згадану папку
user3046442

Це працює для мене. Я намагався додати це до змінних користувачів і системного середовища, але це не працює, для мене працює тільки ваше рішення.
Том

це працювало і для мене, але це кинуло ще одну помилку перед роботою. Чомусь це дало мені бічну сторону конфігурації .... - помилка. Мені довелося додатково встановити перерозподільний пакет Microsoft Visual C ++ 2008 (x86). Якщо хтось має таку ж проблему, ось посилання: [ microsoft.com/de-DE/download/details.aspx?id=29]
Марко

Я використовував шоколадний, щоб встановити graphvizchoco install -y graphviz
Nissan

90

Вам слід встановити пакунок graphviz у вашій системі (не лише пакет python). Для Ubuntu слід спробувати:

sudo apt-get install graphviz

Якщо це не працює (він говорить про те, що на посилання на нього посилається, але немає або щось подібне), запустіть sudo apt-get updateдля того, щоб оновити apt-get і сказати, які пакунки є.
Pro Q

Якщо ви перебуваєте в контейнері Docker (як я), я вже був rootі потрібенapt-get install graphviz
the775

79

Цей вирішив проблему для мене на MAC :

  brew install graphviz

2
Для Mac, здається, це найкращий варіант. Якщо ви не хочете використовувати MacPorts та встановити graphviz звідси: graphviz.org/Download_macos.php .
AlexG

1
Дякую, він працював на моєму MAC. Я намагався встановити і pip, і conda, але це не вийшло.
Catbuilts

Як знайти свою папку для бін, у якій є графік. У мене є ця проблема і зараз насправді вбиває. Щойно перевірив, у мене є графік 2.38.
Herc01

55

Для Windows:

  1. Встановіть пакет Windows з: https://graphviz.gitlab.io/_pages/Download/Download_windows.html
  2. Встановіть graphvizпакет python
  3. Додати C:\Program Files (x86)\Graphviz2.38\binв шлях користувача
  4. Додати C:\Program Files (x86)\Graphviz2.38\bin\dot.exeдо системного шляху

Це працювало для мене!


15
Також закрийте свій "cmd", в якому працює ноутбук з юпітером. Існуючий працюючий CMD не вловлює нові зміни змінних середовища.
Рохіт Нанді

Це не спрацювало для мене, поки я не перезапустив систему
Mohammad Nazari

Це спрацювало чудово. Просто довелося знову перезавантажити ноутбук. Дякую.
Amresh Giri

21

Спробуйте скористатися:

conda install python-graphviz

Якщо ви користуєтеся програмою graphviz, ви знаходитесь на іншому шляху, ніж ваш каталог conda pip install graphviz.


Conda install graphvizпрацювали на windows! нічого іншого, здається, не працює: \
Джоель Карнейро

14

OSX Sierra, Python 2.7, Graphviz 2.38

Використання pip install graphvizта conda install graphvizBOTH вирішує проблему.

pipотримує лише проблему шляху так само, як і ваш, і condaотримує лише помилку імпорту.


ТІЛЬКИ це працювало на мене. перепробувавши все. Дякую.
Meghna Natraj

Conda install graphvizпрацювали на windows! нічого іншого, здається, не працює: \
Джоель Карнейро

10

Просто додайте нижче до вашої екологічної змінної (системної) PATH у Windows

C: \ програмні файли (x86) \ Graphviz2.38 \ bin

там ви можете знайти .exe файли

Якщо не працює

Знайдіть папку Graphviz2.38 / bin у своїх програмних файлах, а не в lib python

Потім додайте у свій ПАТ

Важливо знайти папку, де існують файли .exe


здається, тільки ваша посада може вирішити мою проблему ... win10 Enterprise Edition, зошит для юпітерів, py 3.6
Тревіс

10

Крок 1: Встановіть Graphviz бінарний

Windows:

  1. Завантажте Graphviz з http://www.graphviz.org/download/
  2. Додайте нижче до змінної середовища PATH (згадайте про встановлену версію graphviz):
    • C: \ програмні файли (x86) \ Graphviz2.38 \ bin
    • C: \ програмні файли (x86) \ Graphviz2.38 \ bin \ dot.exe
  3. Закрийте будь-який відкритий зошит Juypter та командний рядок
  4. Перезапустіть запит і тест на Jupyter / cmd

Linux:

  1. sudo apt-get update
  2. sudo apt-get install graphviz
  3. або створити його вручну з http://www.graphviz.org/download/

Крок 2: Встановіть графітовий модуль для python

піп:

  • pip встановити graphviz

конда:

  • конда встановити graphviz

1
Вирішено для мене на winzoz
rakwaht

1
Відмінне пояснення! Дякую ~
Bright Chang

8

Спробуйте conda install graphviz. У мене була така ж проблема, я вирішив її згаданою командою в MacOS.


1
Conda install graphvizпрацювали на windows! нічого іншого, здається, не працює: \
Джоель Карнейро

8

Для використання conda install graphvizта conda install python-graphvizвстановлення GraphViz в Windows10 потрібний шлях для мене : C: / ProgramData / Anaconda3 / Library / bin / graphviz / . Тобто додавання

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

вирішив для мене питання.


6
conda install python-graphviz

Для Windows встановіть Python Graphviz, який буде включати виконувані файли в шлях.


1
Conda install graphvizпрацювали на windows! нічого іншого, здається, не працює: \
Джоель Карнейро

6

У Ubuntu Linux це вирішило для мене:

pip install graphviz
sudo apt-get install graphviz

Ви також можете спробувати conda install -c conda-forge graphvizзамість pip, якщо використовуєте Anaconda.


1
Це працювало і для мене в WSL в Windows 10. Встановлення за допомогою pip було недостатньо.
Nerxis

6

Вирішуючи це питання для себе, я використав цей підручник з GitHub , який проаналізував причину цієї проблеми. Якщо ми читаємо між рядками, він говорить, що йому потрібна система , а також графік пітона . Крім того conda install, нам потрібно буде запустити:

conda install -c conda-forge python-graphviz

Потім перезавантажте ядро; це працює як шарм.


4

1) Graphviz - скачайте розпакування в певному місці системи (pip не працює в Windows) і включіть папку bin в шлях ("встановити змінні середовища у windows" АБО), встановлений вручну в кожній програмі

import os
os.environ["PATH"] += os.pathsep + 'C:/GraphViz/bin'

2) Потім поставте модель на побудову

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()

3

Після встановлення пакета ( посилання, якщо ви цього не зробили), додайте шлях до dot.exe як нову системну змінну.

Шлях за замовчуванням:

C: \ програмні файли (x86) \ Graphviz2.38 \ bin \ dot.exe

введіть тут опис зображення


2

У мене був той самий випуск на Linux з Jupyter.

Щоб вирішити це, я додав бібліотеку точок до python sys.path

По-перше: перевірте, чи dotвстановлено,

Потім:
знайдіть його шлях whereis dot-> / local / notebook / miniconda2 / envs / ik2 / bin / dot

Нарешті, у сценарії python: sys.path.append ("/ local / notebook / miniconda2 / envs / ik2 / bin / dot")


15
У Linux я щойно робив sudo apt-get install graphviz(після цього робив pip install graphviz) і після цього він працював.
словазвідси

@wordsforthewise Ваш коментар повинен бути відповіддю. Вирішили проблему для мене
Рікен Шах

@wordsforthewise така відповідь!
СеФ

2

Спочатку слід скористатися програмою установки pip, а потім завантажити інший пакет на http://www.graphviz.org/Download_windows.php та додати місце встановлення до екологічного шляху, після чого він працює.


2

У мене було те саме повідомлення про помилку в Mac OS (El Capitan), використовуючи ID ID PyCharm. Я встановив Graphviz за допомогою brew, як це рекомендовано у відповіді RZK, і встановив пакунок graphviz python за допомогою PyCharm (я міг перевірити, чи Graphviz встановлений правильно, спробувавши dot -Vв терміналі та отримавши :) dot - graphviz version 2.40.1 (20161225.0304). Але я все ще отримував повідомлення про помилку при спробі зателефонувати Graphviz з PyCharm.

Мені довелося додати шлях / usr / local / bin в параметри PyCharm, як це рекомендовано у відповіді на це питання, щоб вирішити проблему.


2

Це показує певну проблему шляху:

pip install graphviz

Отже, це працювало для мене:

sudo apt-get install graphviz

2

Я перебуваю на macOS Catalina 10.15.3, і у мене була схожа помилка: ExecutableNotFound: failed to execute ['dot', '-Tsvg'], make sure the Graphviz executables are on your systems' PATH

Виправлено це за допомогою:

pip3 install graphviz І brew install graphviz

Зверніть увагу, що pip3 installповідомлення повернеться лише про успіх, Successfully installed graphviz-0.13.2тому нам ще потрібно запустити brew installграфік 2.42.3 (станом на 10 березня 2020 року, 6:00).


1

Для користувачів Linux, які не мають кореневого доступу, а значить, не можуть використовувати sudo команду, як запропоновано в інших відповідях ...

Спочатку активуйте свою віртуальну середу conda (якщо ви хочете використовувати її):

source activate virtual-env-name

Потім встановіть graphviz, навіть якщо ви вже зробили це за допомогою pip:

conda install graphviz

потім скопіюйте результат наступної команди:

whereis dot

У моєму випадку його вихід:

/home/nader/anaconda2/bin/dot

і додайте його до вашої змінної PATH. Просто запустіть команду нижче

nano ~/.bashrc

і додайте ці рядки до кінця відкритого файлу:

PATH="/home/username/anaconda2/bin/dot:$PATH"
export PATH

тепер натисніть Ctrl+, Oа потім Ctrl+X щоб зберегти та вийти.

Проблему слід вирішити вже зараз.

Користувачі Pycharm, зверніть увагу: Pycharm не завжди бачить змінну PATH такою ж, як у вашого терміналу. Це рішення не працює для Pycharm та, можливо, інших IDE. Але ви можете виправити це, додавши цей рядок коду:

os.environ["PATH"] += os.pathsep + '/home/nader/anaconda2/bin'

до вашої програми python. Не забудь

import os

перший :)

Редагувати: Якщо ви не хочете використовувати conda, ви все одно можете встановити graphviz звідси без кореневих дозволів і додати папку bin до змінної PATH. Я цього не перевіряв.


що робити, якщо whereis dotнічого не виводить, окрім як dot:? Я використовую PyCharm в Windows для підключення до сервера Ubuntu 16.04 і, здається, не можу знайти потрібну папку для додаванняos.environ["PATH"] += os.pathsep + '...'
bit_scientist

Швидше зверніться до цього мого випуску, розміщеного тут
bit_scientist

1

1.встановіть пакет Windows з: https://graphviz.gitlab.io/_pages/Download/Download_windows.html та завантажте файл msi

Додати в змінні середовища 2. Додайте C: \ Program Files (x86) \ Graphviz2.38 \ bin в користувальницький шлях

  1. Додати C: \ Program Files (x86) \ Graphviz2.38 \ bin \ dot.exe до системного шляху

  2. Перезавантажте ноутбук python.

Це спрацює.


1

Додайте graphviz до системного шляху

  1. Windows - Редагування змінних системного середовища.
  2. Виберіть Змінні середовища.
  3. Виберіть Шлях - Новий
  4. Додайте Шлях графвізу

Наприклад: C: \ Users \ AppData \ Local \ Continuum \ anaconda3 \ Library \ bin \ graphviz


0

ОС Mojave 10.14., Python 3.6

Використання pip install graphvizотримало хороші відгуки в терміналі, але призвело до цієї помилки, коли я намагався зробити графік у зошиті Юпітера. Потім я побіг brew install graphviz, що дав помилку в терміналі. Потім я побіг conda install graphvizі графік спрацював.

З коментаря @ Leighton: pip отримує лише проблему шляху так само, як і ваш, а conda отримує лише помилку імпорту.


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

Це вирішило для мене проблему PATH на MAC!


0

Якщо ви не використовуєте Conda, а ванільний Python, "варити встановити graphviz" працює.


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))

0

спробуйте ввести наступний код у підказку anaconda по черзі.

це працювало для мене.

Джерело: 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 

-2

намагаємось це зробити в python import sys! conda install --yes --prefix {sys.prefix} graphviz import graphviz


Будь ласка , додайте більше деталей до вашої відповіді, наприклад, чому це було б вирішити проблему
Deiv
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.