Мы пытаемся создать виртуальную облачную среду для наших студентов. Студенты должны иметь возможность войти в систему, запустить Python IDE и построить несколько графиков для своей домашней работы.
Мы работаем с 64-битной Ubuntu 12.10 с установленными Python и IDLE ide. Студенты входят в систему с помощью ssh -X и запускают IDLE, который порождает окно с графическим интерфейсом.
Проблема: запуск чего-то подобного в ide
nltk.download()
порождает новое окно. НО , когда мы пытаемся что-то вроде этого:
book2.dispersion_plot("chair")
Ничего не происходит , где мы можем ожидать появления нового окна и показа сюжета (вот что происходит на местная машина). Я подозреваю, что это как-то связано с X11, но на данный момент я далеко не исчерпал свои знания системного администратора. Подтвердили это как на Mac (xQuartz), так и на PC (xming) клиенте. Любая помощь будет высоко ценится.
Получил его.
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). Надежда, которая помогает кому-то!