各位朋友好,想请教ubuntu14.04系统python3.4环境下安装python绘图库matplotlib报错TypeError: constructor returned NULL的解决方法。

qingyuanlu 发布于 2016/05/20 19:59
阅读 617
收藏 0

各位朋友好,想请教ubuntu14.04系统python3.4环境下安装python绘图库matplotlib报错TypeError: constructor returned NULL的解决方法。

具体的问题是这样的:

我的系统是Ubuntu14.04 64位系统,python3.4版本下,想使用matplotlib来做图。

由于matplotlib依赖numpypython的图像库PIL,因此我先安装numpyPIL然后,再安装matplotlib

 

这里附上我的安装matplotlibshell命令

 

#安装科学计算库numpy

sudo pip3 install numpy

#安装图像处理库PIL

sudo apt-get install python3.4-dev -y

sudo apt-get install libjpeg8-dev zlib1g-dev libfreetype6-dev -y

sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib

sudo ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib

sudo ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib

sudo apt-get install python3-pil

#安装画图库matplotlib

sudo pip3 install matplotlib

 

 

但是发现虽然安装成功(在python3shell交互环境下, import matplotlib 是可以的),但是 执行如下语句

from matplotlib import pyplot as plt

报错:

"/usr/local/lib/python3.4/dist-packages/matplotlib-1.5.1-py3.4-linux-x86_64.egg/matplotlib/backends/backend_gtk3.py", line 58, in <module>

    cursors.MOVE          : Gdk.Cursor.new(Gdk.CursorType.FLEUR),

TypeError: constructor returned NULL

 

希望各位朋友能指点一下,十分感谢
加载中
0
风花飘
import matplotlib.pyplot as plt试试
0
e
empires2

你直接使用sudo pip install matplotlib是将matplotlib安装到系统自带的python环境下了. 

根据你的安装过程,你已经装了anaconda,其中已经包含matplotlib,就不需要再安装matplotlib了.

你要做的就是:

$ conda -n envmpl xxx #在anaconda下创建一个python虚拟环境就可以了.

然后

$ source activate envmple

(envmpl)$ python yourscript.py

最后,由于从你问题中看不出是在那个python环境下执行python脚本的,所以无法确定为什么import matplotlib不成功的原因.

0
hmjhmj55
hmjhmj55
import matplotlib
#matplotlib.use("Agg")
matplotlib.use("Pdf")

上面代码添加在import... plt之前

返回顶部
顶部