我在MacBook上运行Anaconda 2.0.0(x86_64)下的Python 2.7.11。
几个星期前,作为让OpenCV工作的过程的一部分,我将numpy
从任何地方(不幸/愚蠢地没有记录)降级到1.7.1。我似乎记得这是必要的,我不希望OpenCV停止工作,所以我很确定我现在应该将numpy
留在原处。
但是,今天我发现这已经破坏了matplotlib
/ pylab
。当我import pylab
时,我得到以下内容:
---------------------------------------------------------------------------
RuntimeError Traceback (most recent call last)
RuntimeError: module compiled against API version 9 but this version of numpy is 7
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
...
...
ImportError: numpy.core.multiarray failed to import
因此,我的问题是:如何安装(或回滚)与现有matplotlib
兼容的numpy
版本,不带扰乱我现有的numpy
?
此处我到目前为止:基于SO上的相关conda
问题,我查看了conda list --revisions matplotlib
的输出,其中包括:
...
2016-03-28 17:16:36 (rev 6)
conda {3.8.3 -> 4.0.5}
conda-env {2.0.1 -> 2.4.5}
numpy {1.8.1 -> 1.7.1}
...
现在我不确定如何解释这一点,但鉴于numpy
版本号看起来实际上与其他所有条目形成鲜明对比,这听起来像是一个充满希望的," 2016年3月,matplotlib意识到它可能会回归到
conda install --revision=6 matplotlib
我告诉我已经拥有它,它的依赖性是numpy
1.8:
Fetching package metadata: ....
# All requested packages already installed.
# packages in environment at /Users/jez/anaconda:
#
matplotlib 1.3.1 np18py27_1 <unknown>
所以从这里开始我不确定如何继续。我暂时在conda install matplotlib
上播放了一些变体,但它显然想要同时弄乱我的numpy
,所以我从未按过y
。同样清楚的是,我conda
已经超出了我的深度,所以非常感谢你的帮助。
答案 0 :(得分:7)
您可以在conda install
命令中指定所需库的确切版本。例如:
$ conda install numpy=1.7.1 matplotlib=1.3
如果版本不兼容,该命令将给出错误指定不兼容性的错误。