在Ubuntu 8.1中导入pylab的问题

2 投票
1 回答
2404 浏览
提问于 2025-04-15 20:15

我安装了numpy 1.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

试着换一个绘图的后端,不要用Gtk。

打开Python控制台,输入:

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

这会打印出一个文件名。你需要编辑这个文件,找到“Backend”这一部分,把Gtk或GtkAgg换成其他的选项(可以在同一个文件的文档中查看),直到它能正常工作为止。

关于后端的更多信息,你可以在这里找到。

至于你为什么在使用那个后端时会出错,这跟你安装的库和你电脑上有什么东西有关。我建议你用synaptic或yum来安装matplotlib,并选择所有可选的依赖项。

撰写回答