Проблема импорта pylab в Ubuntu 8.1 - PullRequest
2 голосов
/ 10 марта 2010

Я установил numpy1.3, scipy 0.7.1, matplotlib 0.99.1.1 и python 2.5 когда я импортирую pylab, я получаю следующую ошибку. Кто-нибудь, пожалуйста, помогите.

 /var/lib/python-support/python2.5/gtk-2.0/gtk/__init__.py:72: GtkWarning: could not open display
      warnings.warn(str(e), _gtk.Warning)
    /usr/lib/python2.5/site-packages/matplotlib/backends/backend_gtk.py:44: GtkWarning: gdk_cursor_new_for_display: assertion `GDK_IS_DISPLAY (display)' failed
      cursors.MOVE          : gdk.Cursor(gdk.FLEUR),
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/usr/lib/python2.5/site-packages/pylab.py", line 1, in <module>
        from matplotlib.pylab import *
      File "/usr/lib/python2.5/site-packages/matplotlib/pylab.py", line 247, in <module>
        from matplotlib.pyplot import *
      File "/usr/lib/python2.5/site-packages/matplotlib/pyplot.py", line 78, in <module>
        new_figure_manager, draw_if_interactive, show = pylab_setup()
      File "/usr/lib/python2.5/site-packages/matplotlib/backends/__init__.py", line 25, in pylab_setup
        globals(),locals(),[backend_name])
      File "/usr/lib/python2.5/site-packages/matplotlib/backends/backend_gtkagg.py", line 10, in <module>
        from matplotlib.backends.backend_gtk import gtk, FigureManagerGTK, FigureCanvasGTK,\
      File "/usr/lib/python2.5/site-packages/matplotlib/backends/backend_gtk.py", line 44, in <module>
        cursors.MOVE          : gdk.Cursor(gdk.FLEUR),
    RuntimeError: could not create GdkCursor object

1 Ответ

8 голосов
/ 10 марта 2010

попробуйте использовать другой бэкэнд для печати, чем Gtk.

Откройте консоль python и введите:

>>> import matplotlib
>>> matplotlib.matplotlib_fname()

Это напечатает имя файла. Отредактируйте этот файл и измените раздел «Backend» и измените Gtk или GtkAgg на любой другой (см. Документацию в том же файле), пока он не заработает. Вы можете найти больше информации о бэкэндах здесь .

Относительно того, почему вы получаете ошибку при попытке использовать этот бэкэнд, это зависит от того, как вы установили библиотеки и что вы установили на свой компьютер. Я бы порекомендовал установить matplotlib с помощью synaptic / yum и выбрать все необязательные зависимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...