Centos6没有GUI的情况下使用matplotlib绘图

时间:2022-10-15 18:05:49

最近在服务器上安装matplotlib,遇到奇怪问题记录下:

首先matplotlib通过pip安装好了,网上很多不重复,我的环境是CentOS6.4 python2.6 系统自带的版本

import导入报错
>>>import matplotlib.pyplot as plt
报错:
ImportError: Gtk* backend requires pygtk to be installed.

网上说安装运行:
yum install *-tk* 将两个以-tk结尾的软件装上
yum install *gtk2-* 将几个已gtk2开头的软件全装上

之后报错:
RuntimeError: could not open display
网上有说是因为没有linux界面导致的问题,在有界面上就可以了,参考http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=30199261&id=5204890


最后找到了Linux没有GUI的情况下使用matplotlib绘图,尝试了下果然可以。

import matplotlib as mpl  
mpl.use('Agg')  
#而且必须添加在import matplotlib.pyplot之前,否则无效  
#最后在plt.draw后面加上
plt.savefig("/home/yourname/picFaster.jpg")  
#就可以把绘制的图存为jpg,down到本地查看就行了</span>  

例子:
>>> import matplotlib as mpl
>>> mpl.use('Agg')
>>> import matplotlib.pyplot as plt