当我使用ssh访问我的本地实验室群集时,我无法导入matplotlib.pyplot
。
确实,试图import matplotlib.pyplot as plt
给我一个错误。我试图只是import matplotlib as mpl
,这很好,所以特别关于导入pyplot
的内容在这里是错误的。追溯的最后一行说
File '/usr/lib64/python2.7/site-packages/matplotlib/backends/backend_gtk3.py',
line 58, in <module>
cursors.MOVE : Gdk.Cursor.new(Gdk.CursorType.FLEUR),
TypeError: constructor returned NULL
有人可以在这里找出错误吗?或者,有没有办法可以规避错误并仍然使用pyplot
工具?
如果它有所不同,我使用的是Windows 8。
答案 0 :(得分:17)
您无法加载GTK。最有可能的原因是,您无法访问X11服务器并且无法绘制窗口(这是GTK所做的)。
在导入matplotlib.use("Pdf")
之前尝试pyplot
。然后你不需要加载GTK,它不会失败。您仍然可以制作图表并将其保存为pdf,但是您无法在屏幕上绘制它们。
或者,您可以尝试转发X11。然后,您可以看到窗口,就像您在主机上一样。使用Linux客户端,可以通过ssh -X hostname
登录来完成。使用Windows客户端it can be done但不是那么顺利。