关于matplotlib的DISPLAY错误

最近服务器系统重装了一下,原来跑得好好的程序出现了一个“TclError: no display name and no $DISPLAY environment variable”错误,百思不得其解,搜了很久,终于找到了解决办法,记录如下:

DISPLAY error matplotlib

When error occur about this “$DISPLAY not set” when you run Python code that use matplotlib this happened because your matplotlib backend is set to FltkAgg, GTK, GTKAgg, GTKCairo, TkAgg , Wx or WxAgg they required a GUI that why error occur.

To solve this you must specific other backend that not required GUI (Agg, Cairo, PS, PDF or SVG ) when use matplotlib like this

  • In code
    import matplotlib
    matplotlib.use(‘Agg’)
  • In command line use -d option
    Python subplot_demo.py -dAgg

    Remember when call savefig(‘filename’) don’t give it extension this will handle by backend that you specific e.g Agg will create file filename.png

    source from –> http://matplotlib .sourceforge.net/backends.html

资料来源:http://chewpichai.blogspot.com/2008/01/display-error-matplotlib.html 。原文可能被墙了,需要设法翻一下。

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s