以下代码给出错误我不明白为什么:
import numpy as np
import matplotlib.pyplot as plt
a = np.arange(10)
plt.plot(a)
[<matplotlib.lines.Line2D at 0x116be8890>]
plt.show()
2013-01-29 10:58:18.891 Python[27257:903] *** __NSAutoreleaseNoPool(): Object 0x105b27810 of class NSCFArray autoreleased with no pool in place - just leaking
2013-01-29 10:58:18.893 Python[27257:903] *** __NSAutoreleaseNoPool(): Object 0x105b37f60 of class __NSFastEnumerationEnumerator autoreleased with no pool in place - just leaking
2013-01-29 10:58:18.895 Python[27257:903] *** __NSAutoreleaseNoPool(): Object 0x105bee900 of class NSObject autoreleased with no pool in place - just leaking
我有matplotlib 1.2.0,numpy 1.6.2,python 2.7.3和ipython 0.13.1。这些软件包已经安装了macports。这是在Mac OS 10.6.8上进行的,我没有在10.7.5上看到它。
修改:this post shows the same error, although no solution has been clearly found
答案 0 :(得分:1)
我还没有找到解决方案。我的解决方法是安装另一个后端:qt4。这需要做:
sudo port install qt4-mac
sudo port install py27-qt4
然后通过添加以下内容修改(或创建无)文件〜/ .matplotlib / matplotlibrc:
backend : QT4Agg
然后上面的文字没有问题。
答案 1 :(得分:0)
我也有这个问题,我的工作是添加:
plt.ion()
在第一个绘图命令之前。这将打开交互式绘图模式,使错误消失。