LightTable中的Matplotlib内联图未能出现(在Anaconda Python 2.2.0中,但不是2.1.0)

时间:2015-04-22 08:18:27

标签: matplotlib ipython lighttable

我使用LightTable和Anaconda Python发行版(适用于Mac)。我试图让Matplotlib内联图显示为一个简单的代码,如下所示(但是plt.show()命令未注释):

# -*- coding: ascii -*-
import numpy as np
import matplotlib.pyplot as plt

def myplot():
  x = np.linspace(0.0, np.pi, 400)
  y = np.sin(x)
  plt.plot(x, y, lw=2, c='r')
  #plt.show()
  return(np.trapz(y,x))

myplot()

取消注释上面代码段中的plt.show()并运行myplot()后,屏幕上会短暂显示一个白色矩形,然后消失。在此之后,再次注释掉plt.show()后,LightTable中的python内联评估将变为非活动状态(重启LightTable除外)。此外,连接栏显示python而不是ipython,即使python和ipython(Anaconda发行版)都在我的路径上,LightTable似乎能够看到它们(如下图所示) ): LightTablePython.png

可能是libpng问题(请参阅libpng version incompatibility in fresh installation of IPython),还是我需要将ipython notebook --matplotlib=inline置于LightTable配置的某个位置?

我目前的LightTable版本:0.7.2。在Ubuntu 14.04上没有问题。

更新:我发现部分修复,通过重新安装Anaconda 2.1.0(但没有任何额外的软件包):

rm -rf ~/anaconda
bash ~/Downloads/Anaconda-2.1.0-MacOSX-x86_64.sh 

然而,重新安装Anaconda 2.2.0并不起作用:

rm -rf ~/anaconda
bash ~/Downloads/Anaconda-2.2.0-MacOSX-x86_64.sh 

所以显然降级到Anaconda 2.1.0是一个部分修复,但从长远来看,我希望保持我的包更新。其中一个软件包是否存在问题(下面的版本号截图)?

LightTable + Anaconda 2.1.0: LightTable + Anaconda 2.1.0

LightTable + Anaconda 2.2.0: LightTable + Anaconda 2.2.0

1 个答案:

答案 0 :(得分:0)

内联matplotlib绘图始终存在问题的主要原因是它使用了iPython matplotlib内联图。由于iPython不断变化,而且[LightTable]的核心开发团队不再维护LightTable的python支持,这个问题将不断出现。

  

cldwalker commented on Nov 6, 2015

     

核心团队在工作中不使用Python或iPython而没有   调查这个的带宽。很高兴从中受益   任何有兴趣挖掘这个的人。我们也在寻找一个   Python插件的维护者,理想情况下是使用它的人   工作。 #31似乎是一个可能的解决方案,但贡献者可以使用   审查。