Исполняемые файлы 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
У меня была такая же проблема на 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 и столкнулся с той же проблемой.
У меня была работа, делая следующее в последовательности:
- из терминала Anaconda: pip установить pydotplus
- из терминала Anaconda: conda установить pydotplus
- из терминала Anaconda: pip установить graphviz
- из терминала Anaconda: conda установить graphviz
- пошел в среду 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) и даже это не работает, определите переменную, идущую в:
Панель управления > Система и безопасность > Система > Дополнительные Системные настройки > Переменные среды, а затем:
затем определите переменную следующим образом:
Не забудьте назвать переменную Graphviz. Наконец перезагрузите компьютер и надейтесь, что он работает.