Как мне настроить matplotlib для работы на EC2?

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

Мы работаем с 64-битной Ubuntu 12.10 с установленными Python и IDLE ide. Студенты входят в систему с помощью ssh -X и запускают IDLE, который порождает окно с графическим интерфейсом.

Проблема: запуск чего-то подобного в ide

nltk.download()

порождает новое окно. НО , когда мы пытаемся что-то вроде этого:

book2.dispersion_plot("chair")

Ничего не происходит , где мы можем ожидать появления нового окна и показа сюжета (вот что происходит на местная машина). Я подозреваю, что это как-то связано с X11, но на данный момент я далеко не исчерпал свои знания системного администратора. Подтвердили это как на Mac (xQuartz), так и на PC (xming) клиенте. Любая помощь будет высоко ценится.

2
задан 1 April 2013 в 19:47

1 ответ

Получил его.

matplotlib использует бэкенд рендеринга, который должен играть по правилам с x11. Но выбор правильного бэкенда вручную [matplotlib.use ('TkAgg')] выдал бы исключение. Оказывается, что matplotlib не создает правильно под человечностью с зернышком, пропуская некоторые зависимости - конкретно те необходимые для x11-дружественных бэкендов (устанавливающий значение по умолчанию на 'Agg' в matplotlibrc). Зафиксированный:

pip uninstall matplotlib           //unistall matplotlib
apt-get build-dep matplotlib       //download and build needed dependencies
pip install -U matplotlib          //force matplotlib rebuild

Вышеупомянутое правильно устанавливает бэкенд по умолчанию на TkAgg (в matplotlibrc). Надежда, которая помогает кому-то!

2
ответ дан 1 April 2013 в 19:47

Другие вопросы по тегам:

Похожие вопросы: