ImportError:没有名为'matplotlib'的模块 - 使用Anaconda tensorflow环境

问题描述 投票:3回答:2

我只是想学习Tensorflow,但我对Python很新,所以我使用Anaconda我创建了一个conda环境:

$ conda create −n tensorflow python =3.5

当然我激活了我的conda环境

$ source activate tensorflow

然后我在Spyder玩了一下,试图绘制一个MNIST数字(我的导师的复制粘贴代码经过多次测试),当然包括

import matplotlib.pyplot as plt
[...]
plt.plot(number)

但用bash执行Python文件给了我:

(tensorflow) leon@leon-linux:~/ANNsCourse/Session1$ python helloWorld.py
Traceback (most recent call last):
  File "helloWorld.py", line 10, in <module>
    import matplotlib.pyplot as plt
ImportError: No module named 'matplotlib'

我现在很困惑,因为bash中的(tensorflow)显然表明我的conda tensorflow环境有效(至少从我的理解)。另外,根据我的理解,conda应该内置matplotlib,对吧?它还应该在我的conda tensorflow环境中加载它,对吧?这就是我的导师的幻灯片所说的

没有必要安装更多的软件包,如numpy或matplotlib,因为Anaconda已经包含了它们的当前版本。

以及我从Google Googled和StackOverflowed所能获得的东西。谷歌搜索和StackOverflowing都没有给我任何好的答案(也可能只是因为我还不够了解)。

我最好的猜测是,我仍然必须将matplotlib包含在我的tensorflow conda环境中,但这与我的导师和谷歌相矛盾,而我也不知道如何做到这一点。

编辑:conda list告诉我,matplotlib不在我的张量流环境中,所以我去了

conda install matplotlib

我仍然担心我的conda tensorflow环境有问题,默认情况下matplotlib不应该在那里吗?它还告诉我:

Package plan for installation in environment /home/leon/.conda/envs/tensorflow:

The following NEW packages will be INSTALLED:

cycler:           0.10.0-py35_0    
dbus:             1.10.10-0        
expat:            2.1.0-0          
fontconfig:       2.12.1-3         
freetype:         2.5.5-2          
glib:             2.50.2-1         
gst-plugins-base: 1.8.0-0          
gstreamer:        1.8.0-0          
icu:              54.1-0           
jpeg:             9b-0             
libffi:           3.2.1-1          
libgcc:           5.2.0-0          
libiconv:         1.14-0           
libpng:           1.6.27-0         
libxcb:           1.12-1           
libxml2:          2.9.4-0          
matplotlib:       2.0.0-np112py35_0
mkl:              2017.0.1-0       
numpy:            1.12.0-py35_0    
pcre:             8.39-1           
pyparsing:        2.1.4-py35_0     
pyqt:             5.6.0-py35_2     
python-dateutil:  2.6.0-py35_0     
pytz:             2016.10-py35_0   
qt:               5.6.2-3          
sip:              4.18-py35_0      
six:              1.10.0-py35_0    

Proceed ([y]/n)? y

哪个告诉我numpy还缺了?有人可以证实这是正确的,或者我的康达有什么可疑的吗?

python matplotlib tensorflow importerror conda
2个回答
7
投票

您刚刚创建了一个名为tensorflow的conda环境并切换到它。您尚未安装tensorflow软件包或任何默认的anaconda软件包。

要做到这一点,做

conda create -n tensorflow python=3.5 anaconda # install anaconda3 default packages
source activate tensorflow # switch into it
conda install -c conda-forge tensorflow # install tensorflow

0
投票

我使用这些指令遇到了同样的问题:https://www.anaconda.com/tensorflow-in-anaconda/ for tensorflow-gpu。

运行

conda create -n tensorflow_gpuenv tensorflow-gpu
conda activate tensorflow_gpuenv

应确保“TensorFlow现已安装并可以使用”。但事实并非如此。运行'conda list'显示未安装matplotlib。所以你也需要安装它:

conda install -c conda-forge matplotlib

0
投票

我在我的Mac上遇到了同样的问题。所以我运行conda list来查看是否安装了matplotlib。一旦我发现它丢失了,我继续执行命令conda install matplotlib。在此步骤之后验证它是否正确安装;请执行下列操作。

conda activate tf

这激活了anaconda上的张量流环境。在此之后启动交互式python shell在同一终端上。

import matplotlib

如果安装正确,现在不应该抛出任何错误。

© www.soinside.com 2019 - 2024. All rights reserved.