python + график igraph недоступен

Я установил python-igraph 0.5.4 и igraph 0.5.4 (также тестировал 0.6) из исходного кода на машине RHEL. Все нормально, за исключением того, что когда я пытаюсь построить сюжет, я получаю.

"Ошибка типа: прорисовка недоступна"

На этапах настройки или установки ошибок или предупреждений не было.

Что мне нужно установить в Linux, чтобы заставить работать графику? У меня нет рута, поэтому мне нужно установить его из исходников.


person Raphael    schedule 22.08.2012    source источник


Ответы (5)


igraph использует библиотеку Cairo для построения графиков, поэтому вам понадобится Cairo и его интерфейс Python. Скорее всего, Cairo уже установлен на вашем компьютере (ищите файлы с именем libcairo* в /usr/lib и /usr/lib64), поэтому вам просто нужен Python интерфейс Каира.

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

person Tamás    schedule 22.08.2012
comment
Кажется, у меня установлен cairo 1.2.4, а современному pycairo нужна гораздо более новая версия. Требуется ли для igraph 0.6 современный pycairo или я могу использовать и его старую версию? - person Raphael; 22.08.2012
comment
Я должен сказать, что пытался установить более новый cairo в свой домашний каталог, но ему также нужен pixman, и я не мог разрешить зависимости/разработать, как указать ему, где находятся библиотеки. - person Raphael; 22.08.2012
comment
Вы можете использовать более старый PyCairo, он должен работать. Просто убедитесь, что он соответствует версии Cairo на вашем компьютере. - person Tamás; 23.08.2012
comment
Спасибо, в итоге у меня получилось. Последний трюк заключался в том, чтобы понять, что в PYTHONPATH может потребоваться более одного каталога в зависимости от того, где установлены модули. В частности, мне нужны были как .../lib/python2.6/site-packages, так и .../lib/python - person Raphael; 24.08.2012
comment
brew install cairo был недостающей частью для меня в Mac OS X. Очень, очень болезненное путешествие по длинной, узкой и тернистой кроличьей норе установки, удаления, настройки, удаления, экспорта, отмены экспорта, активации, деактивации и бог знает, что зашифрованное состояние мой мир Python находится после всего этого. - person Reb.Cabin; 26.11.2017

У меня была такая же проблема на моем MacBook, поэтому я хотел поделиться своим решением.

Я пытался установить pycairo, py2cairo. Установка прошла нормально, но потом:

  1. Я не мог import pycairo
  2. сюжет igraph не сработает.

Следующее решило проблему с графикой igraph:

sudo pip install cairocffi

или просто

pip install cairocffi

Поэтому вместо pycairo я использовал cairocffi, и это помогло.

person seralouk    schedule 31.07.2017
comment
Превосходно! Также работал у меня в py37 venv: pip install cairocffi - person Victoria Stuart; 25.05.2019
comment
Я получил TypeError: expected str, bytes or os.PathLike object, not Layout после этого. Тем не менее, это устранило предыдущую ошибку. - person fizzybear; 04.12.2019

У меня была такая же проблема (винда). Вы должны установить Каир.

К сожалению, официальной сборки для windows нет. Но есть и неофициальные.

Примечания:

  • cpXX означает версию Python (проверьте: python -V)
  • выполнить в папке с файлом: pip install *.whl (версия pip должна быть выше 19)

Дополнительные сведения см. в официальном руководстве по установке (глава igraph на окна).

person Alexander Rakhmaev    schedule 15.05.2020

Как уже указывали несколько респондентов, в этом случае, скорее всего, потребуется pycairo. Установка pycairo с использованием Conda устранила проблему на моем компьютере менее чем за минуту:

conda install -c conda-forge pycairo

Я предполагаю, что такого же результата можно добиться с помощью PIP:

pip install pycairo
person Unis    schedule 07.05.2021

Решение для Ubuntu, которое сработало для меня. Просто установите Каир:

sudo apt install libcairo2-dev

Источник: https://www.cairographics.org/download

person Bálint Sass    schedule 04.06.2021