Исполняемые файлы Graphviz не найдены (Python 3.4)

я запускаю Python3.4 в Windows 7. Я пытаюсь использовать интерфейс Python для graphviz. Это сценарий, который я намерен запустить:

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)

Я получаю следующую ошибку во время выполнения:

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

Теперь я уверен, что правильно установил правильные зависимости. Сначала я попытался установить правильные переменные среды. Исполняемые файлы программ находятся в C:Program файлы (x86)Graphviz2.37 bin поэтому я пошел в раздел переменных среды. Там есть два раздела: пользовательские переменные и системные переменные. В разделе системные переменные я нажал на путь после нажатия Edit и добавил ;C:Program файлы (x86)Graphviz2.37 bin до конца строки и сохранены. Это не прояснило ошибку.

затем, после ответа приведенный здесь я удалил pydot (на самом деле я использую pydotplus здесь) и снова установил его, но все равно не удалось.

Я пытаюсь часы, чтобы исправить это и всю переменную пути, просто запутывают и расстраивают.

15 ответов


в моем случае (Win10, anaconda3, Jupyter notebook) после "conda install graphviz" Я должен добавить к пути:C:\Users\username\Anaconda3\Library\bin\graphviz

изменить путь goto Control Panel > System and Security > System > Advanced System Settings > Environment Variables > Path > Edit > New


на ноутбуке jupyter(ipython) с anaconda в win10 я решил проблему conda install graphviz после того, как я установил graphviz по pip install graphviz


при добавлении C:\Program файлы (x86)\Graphviz2.38\bin to PATH, затем вы должны закрыть среду IDE, такую как spyder и перезапустить, вы решите "RuntimeError:убедитесь, что исполняемые файлы Graphviz находятся на пути ваших систем"


У меня также была эта проблема на Ubuntu 16.04.

исправлено путем запуска sudo apt-get install graphviz в дополнение к установке pip, которую я уже выполнил.


Как оказалось, Graphviz2.Известно, что 37 имеет проблемы с переменной PATH в windows. Я удалил его, удалил связанные с ним переменные среды и вместо этого загрузил и установил новую бета-версию отсюда и теперь он работает как шарм.


чтобы решить эту проблему, при установке graphviz2.38 успешно, затем добавьте переменную PATH в системный путь.В разделе системные переменные вы можете нажать на Path, а затем нажать Edit и added ;C:\Program файлы (x86)\Graphviz2.38\bin до конца строки и сохранен.После этого перезагрузите pythonIDE как spyper, тогда он работает хорошо.

Не забудьте закрыть Spyder, а затем перезапустить.


Я решил его установку непосредственно из https://graphviz.gitlab.io/_pages/Download/Download_windows.html и в том числе в Windows path:

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

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

после перезагрузки windows


поскольку Mac OS не была упомянута, я добавлю, что у меня была та же проблема на OS X Yosemite, решение, которое я нашел, было сделать brew install graphviz

это решило проблему, не уверен, что я не должен был просто редактировать один из других ответов в этом списке, потому что все они кажутся одним и тем же ответом, просто установите официальный пакет в дополнение к библиотеке Python.


для windows 8.1 & python 2.7 я исправил проблему, выполнив следующие шаги

1 . Скачать и установить graphviz-2.38.msi http://www.graphviz.org/pub/graphviz/stable/windows/graphviz-2.38.msi

2 . Установите переменную path

  • Панель управления > Система и безопасность > Система > расширенные Системные настройки > Переменные среды > путь > изменить
  • добавить 'C:\Program файлы (x86)\Graphviz2.38 \ bin'

у меня была такая же проблема с Windows 10.

во-первых, я установил graphviz-2.38.0 со следующей командой без каких-либо проблем...

install -c anaconda graphviz=2.38.0

во-вторых, я установил pydotplus со следующей командой без каких-либо проблем...

install -c conda-forge pydotplus

после этого, когда я добрался до своего шага, чтобы визуализировать мое дерево решений, была следующая проблема с {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

в моем случае все, что мне нужно было сделать, чтобы исправить это, это поместить путь среды graphviz исполняемые файлы в мой пользователь!--8--> переменные среды и это исправил. Просто убедитесь, что это путь, где YOUR.exe файлы расположены :)

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

просто установить

conda install graphviz

установить

conda install -c conda-forge pydotplus

У меня была такая же проблема на Ubuntu(14.04) с Jupyter.

чтобы решить эту проблему, я добавил библиотеку точек в python sys.путь

во-первых: проверьте, установлена ли точка,

затем: найти свой путь whereis dot - > /local / notebook/miniconda2/envs/ik2/bin / dot

наконец в скрипте python: sys.путь.добавить ("/local / notebook / miniconda2/envs / ik2 / bin / dot")


Я использую Windows 10, Python 3.6 на Anaconda 3 и столкнулся с той же проблемой.

У меня была работа, делая следующее в последовательности:

  1. из терминала Anaconda: pip установить pydotplus
  2. из терминала Anaconda: conda установить pydotplus
  3. из терминала Anaconda: pip установить graphviz
  4. из терминала Anaconda: conda установить graphviz
  5. пошел в среду Windows Varialbes, путь и добавил расположение моей точки.exe файл в каталоге graphviz в Anaconda.

работало нормально после этого.


Если вы находитесь на Win10, установите Graphviz, а затем используйте следующую команду для добавления пути.

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

обратите внимание, что я использую Windows 10. некоторые из перечисленных ниже могут применяться или не применяться для других версий windows или операционных систем:

** Примечание 2: **
"адрес файла Graphviz bin в вашей системе" может быть C:\Program файлы (x86)\Graphviz2.38 \ bin или любой другой путь, который вы установили Graphviz там.

У нас есть проблема не только с Graphviz, но и с другими внешними EXE-файлами, которые мы хотим использовать в Jupyter.
Причина jupyter хочет импортировать пакет, который он ищет в рабочем каталоге, чтобы найти его, и когда ему не удается найти пакет, он возвращает такие ошибки.
Что мы можем сделать, это решить это следующим образом:
1) проверьте, установлен ли Graphviz в вашей системе, и если нет, вы можете загрузить и установить его из:

https://graphviz.gitlab.io/_pages/Download/Download_windows.html
и затем установить его. При установке Graphviz, имейте в виду, где (в котором папка) вы устанавливаете его. Если вы видите вышеуказанную ошибку при использовании

import graphviz

тогда у вас есть несколько вариантов:

2) Вы можете назвать .exe файл в ipynb через

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

по моему опыту, он работает только для того же ipynb, с которым я работаю, и каждый раз, когда я открываю ноутбук, мне нужно вызвать эти строки кода.

3) Если вы хотите Jupyter, где найти exe-файл, вам нужно установить environmenal путь.
В Windows 10 вы можете сделать это:
Панель управления > Система и безопасность > Система > расширенные Системные настройки > Переменные среды > путь > правка > создать
а затем добавьте " адрес файла Graphviz bin в вашей системе" В windows 8 или Ниже перейдите к:
Панель управления > Система и безопасность > Система > расширенные Системные настройки > Переменные среды
а затем добавьте; (точка с запятой) + "адрес файла Graphviz bin в вашей системе" в конец пути строка
Примечание: не забудьте перезагрузить компьютер.

4) и даже это не работает, определите переменную, идущую в:
Панель управления > Система и безопасность > Система > Дополнительные Системные настройки > Переменные среды, а затем:

Start to define an environmental variable

затем определите переменную следующим образом: Remember to name the variable Graphviz

Не забудьте назвать переменную Graphviz. Наконец перезагрузите компьютер и надейтесь, что он работает.