Подтвердить что ты не робот

Matplotlib - ошибка Python

Настройка:

Процессор: x86_64 Операционная система: GNU/Linux Distro: Fedora Release 13 (Goddard).

Python 2.6.4

 /usr/bin/python

Вот следующая проблема:

Я пытаюсь создать несколько графиков с использованием Matplotlib и Python. Как я понимаю из большинства решений 3.., похоже, проблемы совместимости между matplotlib и 64-битные архитектуры.

Я установил Matplotlib из здесь

Вот ошибка, которую я получаю:

Traceback (most recent call last):
  File "plot-thread-characterization.py", line 24, in <module>
    import matplotlib.pyplot as plt
  File "/usr/lib64/python2.6/site-packages/matplotlib/pyplot.py", line 78, in <module>
    new_figure_manager, draw_if_interactive, show = pylab_setup()
  File "/usr/lib64/python2.6/site-packages/matplotlib/backends/__init__.py", line 25, in pylab_setup
    globals(),locals(),[backend_name])
  File "/usr/lib64/python2.6/site-packages/matplotlib/backends/backend_gtkagg.py", line 10, in <module>
    from matplotlib.backends.backend_gtk import gtk, FigureManagerGTK, FigureCanvasGTK,\
  File "/usr/lib64/python2.6/site-packages/matplotlib/backends/backend_gtk.py", line 8, in <module>
    import gtk; gdk = gtk.gdk
  File "/usr/lib64/python2.6/site-packages/gtk-2.0/gtk/__init__.py", line 64, in <module>
    _init()
  File "/usr/lib64/python2.6/site-packages/gtk-2.0/gtk/__init__.py", line 52, in _init
    _gtk.init_check()
RuntimeError: could not open display

Спасибо.

4b9b3361

Ответ 1

matplotlib не может подключиться к любому X-серверу для своего дисплея GTK.

Здесь есть несколько вариантов:

  • Запустите локальный X-сервер и включите переадресацию X11 в вашем ssh-клиенте, чтобы отобразить вывод на вашем локальном компьютере. Вы можете проверить, работает ли это, проверяя, что переменная среды $DISPLAY установлена ​​на сервере.

  • Вызовите matplotlib.use(...), чтобы указать другой внешний интерфейс отображения, например рендеринг в pdf файл, перед импортом pyplot, например.

    import matplotlib as mpl

    mpl.use('Agg')

    import matplotlib.pyplot as plt

Подробнее см. http://matplotlib.org/faq/howto_faq.html#generate-images-without-having-a-window-appear.