在linux环境中绘制python错误…是否可以保存?

在linux环境中绘制python错误…是否可以保存?,python,linux,unix,matplotlib,pandas,Python,Linux,Unix,Matplotlib,Pandas,我正在尝试用python绘制一个熊猫系列。然而,我不是在家里的电脑上工作,而是在linux外壳上通过网格计算工作。当我打字时: series.plot() 我得到这个错误: File "<stdin>", line 1, in <module> File "/usr/local/lib/python2.7/dist-packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py", l

我正在尝试用python绘制一个熊猫系列。然而,我不是在家里的电脑上工作,而是在linux外壳上通过网格计算工作。当我打字时:

series.plot()
我得到这个错误:

  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py", line 2487, in plot_series
    **kwds)
  File "/usr/local/lib/python2.7/dist-packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py", line 2293, in _plot
    plot_obj.generate()
  File "/usr/local/lib/python2.7/dist-packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py", line 919, in generate
    self._setup_subplots()
  File "/usr/local/lib/python2.7/dist-packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py", line 952, in _setup_subplots
    fig = self.plt.figure(figsize=self.figsize)
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 343, in figure
    **kwargs)
  File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_tkagg.py", line 80, in new_figure_manager
    window = Tk.Tk()
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1688, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
文件“”,第1行,在
plot_系列中的文件“/usr/local/lib/python2.7/dist packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py”,第2487行
**kwds)
文件“/usr/local/lib/python2.7/dist packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py”,第2293行,在_plot中
绘图对象生成()
文件“/usr/local/lib/python2.7/dist packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py”,第919行,在generate中
self.\u设置\u子批次()
文件“/usr/local/lib/python2.7/dist-packages/pandas-0.15.0-py2.7-linux-x86_64.egg/pandas/tools/plotting.py”,第952行,在安装程序子图中
fig=self.plt.figure(figsize=self.figsize)
文件“/usr/lib/pymodules/python2.7/matplotlib/pyplot.py”,图中第343行
**kwargs)
文件“/usr/lib/pymodules/python2.7/matplotlib/backends/backend\u tkagg.py”,第80行,在新的图形管理器中
window=Tk.Tk()
文件“/usr/lib/python2.7/lib tk/Tkinter.py”,第1688行,在__
self.tk=\u tkinter.create(屏幕名、基本名、类名、交互、wantobjects、useTk、同步、使用)
_tkinter.TclError:没有显示名称和$display环境变量
有人知道我能做什么或者我应该让我的系统管理员做什么吗?是否可以只将绘图保存到文件,而不首先将其置于某种显示环境中?

您可以重置为不需要显示的绘图,例如AGG、PNG、SVG、PDF、PS、CAROI或GDK:

import numpy as np
import pandas as pd

def reset_backend(backend):
    import sys
    del sys.modules['matplotlib.backends']
    del sys.modules['matplotlib.pyplot']
    import matplotlib as mpl
    mpl.use(backend)  # do this before importing pyplot
    import matplotlib.pyplot as plt
    return plt

reset_backend('agg')
ser = pd.Series(np.random.random(5))
ser.plot()
plt.savefig('/path/to/file.png')
请注意,可用的后端取决于matplotlib的安装方式。如果使用不可用的后端调用
reset\u backend
,您将看到一条错误消息,其中列出了安装中可用的后端