Python: проблемы с установкой pygraphviz и graphviz
я вижу много вопросов о трудностях правильной установки pygraphviz
и graphviz
в Windows для Python 2.7. Но никакие ответы, которые я нашел, не решают мою проблему. Вот что я сделал:--27-->
- я впервые установил pygraphviz, используя неофициальные двоичные файлы windows
с этим ссылке в моей папке anaconda (python) (
C:UserschamarAppDataLocalContinuumAnaconda
) - скачал graphviz-2.36.MSI и установил его по умолчанию
путь
C:Program Files (x86)Graphviz2.36
в команда import pygraphviz
в Python работает. Но когда я хочу использовать, скажите эту функцию nx.graphviz_layout
Я raise ValueError("Program %s not found in path."%prog)
что может вызвать эту проблему, так это то, что pygraphviz
не удается найти путь graphviz
. Теперь, так как я установил pygraphviz
используя неофициальный двоичный файл windows, который я могу изменить, чтобы связать оба library
и include
на 'ы? Вы бы вы обычно находите в setup.py
of pygraphviz
на library
и include
пути, когда вы не используете неофициальный двоичный код.
обновление 1
я добавил PATH
на Regedit
под SOFTWARE
папка GRAPHIZ с новым key
(по умолчанию) со значением C:Program Files (x86)Graphviz2.36bin
обновление 2
у меня была ошибка в блоке pydot.py
файл, касающийся сложности Python определения пути Graphviz. Я внес следующие изменения:
def _graphviz():
if os.sys.platform == 'win32':
path = r"C:/Program Files (x86)/Graphviz2.36/bin/"
progs = __find_executables(path)
return progs
find_graphviz()
{'fdp': 'C:/Program Files (x86)/Graphviz2.36/bin/fdp.exe', 'twopi': 'C:/Program Files (x86)/Graphviz2.36/bin/twopi.exe', 'neato': 'C:/Program Files (x86)/Graphviz2.36/bin/neato.exe', 'dot': 'C:/Program Files (x86)/Graphviz2.36/bin/dot.exe', 'circo': 'C:/Program Files (x86)/Graphviz2.36/bin/circo.exe'}
мне кажется, это нормально, но когда я выполняю, говорю:
positions = nx.graphviz_layout(G, prog='twopi', root=0)
I получить:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:Userschamar.stuAppDataLocalContinuumAnacondalibsite-packagesnetworkxdrawingnx_agraph.py", line 229, in graphviz_layout
return pygraphviz_layout(G,prog=prog,root=root,args=args)
File "C:Userschamar.stuAppDataLocalContinuumAnacondalibsite-packagesnetworkxdrawingnx_agraph.py", line 264, in pygraphviz_layout
A.layout(prog=prog,args=args)
File "C:Userschamar.stuAppDataLocalContinuumAnacondalibsite-packagespygraphvizagraph.py", line 1305, in layout
data=self._run_prog(prog,' '.join([args,"-T",fmt]))
File "C:Userschamar.stuAppDataLocalContinuumAnacondalibsite-packagespygraphvizagraph.py", line 1251, in _run_prog
runprog=r'"%s"'%self._get_prog(prog)
File "C:Userschamar.stuAppDataLocalContinuumAnacondalibsite-packagespygraphvizagraph.py", line 1239, in _get_prog
raise ValueError("Program %s not found in path."%prog)
ValueError: Program twopi not found in path.
почему?
3 ответов
вот шаги, которые я выполнил, чтобы заставить pygraphviz работать на Python 3.4 (я думаю, если вы выполните аналогичные шаги, он должен работать на Python 2.икс.) Я просто документирую его здесь для будущих посетителей страницы:
предпосылки :
- колеса (должно присутствовать по умолчанию в новых дистрибутивах)
- правильная сборка Windows pygraphviz (неофициальные билды). На Win7 x64 я выбрал "pygraphviz‑ $version - cp34-none-win_amd64.whl".
(Примечание
cp34
указание версии python.) - Программе Graphviz установки версия 2.38 (для которой построено вышеуказанное колесо)
действия:
- запустите установщик Graphviz
- добавьте папку Graphviz\bin в путь пользователя или системы
-
Регистрация: Откройте командную строку и выполните
twopi -V
. Вы должна быть возможность видеть версию Graphviz, напечатанную на консоли. - Теперь перейдите в свою среду Python (например, запустив
anaconda.bat
запрос, где вы можете запуститьpython
) - выполнить
pip install pygraphviz‑*$version*-cp34‑none‑win_amd64.whl
- ты молодец :) ! Запустить пример скрипта чтобы посмотреть, все ли прошло хорошо.
вы найдете множество готовых к установке пакетов на этом сайте:http://www.lfd.uci.edu / ~gohlke / pythonlibs/ включая те, которые вы пытались установить. Я знаю, что слишком поздно с ответом, но я только что стал членом.
вы можете сначала установить "easy_install" (посмотреть Как использовать "easy_install" Python в Windows ... это не так просто) затем требуются 2 пакета: 'python-pygraph' и 'libgv-python'.