【问题标题】:Problems with installing matplotlib in python 3.6在 python 3.6 中安装 matplotlib 的问题
【发布时间】:2017-01-05 05:07:19
【问题描述】:

我正在尝试自学 Python,但我觉得我的深度不够。首先,我正在使用已经安装了 python 2.7 的 mac。

我最近安装了 python 3.6,并一直在使用它来自学基础知识。我想最终学习如何在 python 中生成数学图,我知道我需要 matplotlib 包来做到这一点。

根据网上的一些建议,我被告知 python3 已经安装了 pip,我认为我应该使用它来安装 matplotlib。建议说我应该在 mac 终端中输入以下内容:

python3.6 -m pip install matplotlib

我输入了这个,看起来包正在安装,但我最终得到了某种错误代码,上面写着:

命令“python setup.py egg_info”失败,[文件夹]中的错误代码为 1。

我尝试打开 IDLE 并输入“import matplotlib”,但出现错误:“没有名为 matplotlib 的模块”。我也尝试输入“import matplotlib.pyplot as plt”,但我得到了同样的错误。

基于进一步的研究和this youtube video,我决定只安装 miniconda 以便访问 matplotlib 包。

问题是,当我运行上面的代码安装 matplotlib 时,我不确定是否应该以某种方式卸载已安装的任何内容。我实际上已经运行了那行代码 3 或 4 次。在安装 miniconda 之前我应该​​删除任何东西吗?另外,我正在运行 python 3.6,而 miniconda 在网站上被列为适用于 python 3.5。这是否意味着它不适用于我的 python 版本?

【问题讨论】:

  • 最好使用 Python 3.5 而不是 3.6 - 新版本可能没有您现在需要的新内容 - 请稍等,因为某些模块还没有为新版本做好准备。

标签: python python-3.x matplotlib miniconda


【解决方案1】:

像这样运行 pip 会在系统范围内安装软件包。我猜它失败了,因为您没有以 root 身份运行(即管理员用户)。可是等等!不要以 root 身份再次尝试!不要安装软件包,而是在virtual environment 中进行。首先创建它:

virtualenv myenv

这将创建一个名为myenv 的目录,其中包含一堆东西(因此请记下您运行此命令的位置)。每当您想使用虚拟环境时(比如立即使用!),您首先需要激活它:

. myenv/bin/activate

不要错过开头的那个点(后跟一个空格)!正如另一个答案所说,您应该做的第一件事是升级 pip:

pip install --upgrade pip

现在你可以安装任何你喜欢的东西了:

pip install matplotlib

最后一点:虚拟环境与特定的 Python 版本相关联。默认情况下,它使用系统的 Python 2.7 安装,因此要使用不同的安装,您需要在创建虚拟环境时指定它,如下所示(如果该 Python 版本安装在系统范围内):

virtualenv -p python3.5 myenv

或者像这样(如果那个 Python 版本没有在系统范围内安装):

virtualenv -p /path/to/my/installation/of/python3.5 myenv

激活虚拟环境后,您无需指定 Python 的特定路径/版本。像这样运行它:

python

【讨论】:

  • @user46944 是的,创建虚拟环境会创建一个新文件夹(在此示例中称为 ./myenv)。但它的好处是pip installpip uninstall 只影响该目录中的包(当虚拟环境被激活时)。所以它真的很安全,因为如果你把事情搞砸了,你可以删除整个目录(即rm -r myenv),就好像它从未存在过一样。要在激活该虚拟环境的情况下启动 Idle,最简单的方法是从命令行激活虚拟环境,然后运行 ​​python -m idlelib
  • @user46944 1. 我对 Mac 的 finder(或一般的 Mac)一无所知,但生成的文件夹只是一个普通目录,所以我认为它会显示出来。 2. 不,你不应该把你的脚本保存在那里;虚拟环境目录仅用于您使用 pip 在其中安装的软件包。 3.没有必要(但有也无妨);虚拟环境应该不受您在其他地方安装的软件包的影响。
【解决方案2】:

我在安装过程中也遇到了很多问题。
matplotlib 2 版似乎与 Python 3 版不兼容。

最后,我成功地通过以下命令指定了matplotlib的版本3:

sudo apt-get install python3-matplotlib

参考来自 Matplotlib 网站:
https://matplotlib.org/users/installing.html#building-on-linux

【讨论】:

    【解决方案3】:

    尝试升级设置工具

    --upgrade setuptools
    

    easy_install -U setuptools
    

    或升级 pip

    pip install --upgrade pip
    

    【讨论】:

    • 您只需在终端中键入两个命令中的任何一个(取决于哪个不起作用),而无需在终端中执行任何其他命令。当我开始阅读“Amit Saha 用 python 进行数学运算”时,我之前在我的 Mac 上安装了 matplotlib,并且说明说通过键入-------------pip install matplotlib-venn 为 mac 安装 matplotlib --------。实际上,如果您最近安装了 python,则 pip 不需要升级,因为它是 python 自带的,如果我让您感到困惑,请见谅。在这里尝试一下是一个提示--->转到终端,输入 python,然后输入 import matplotlib。棒棒哒! (当然除非有错误)
    • 如果你尝试再次安装matplotlib,即使你认为你已经下载了它,有两个结果 - 1.你成功下载它意味着你没有第一次下载它 2.它说你已经有它下载了。 3.说你已经下载了,建议你升级,因为有新版本出来了(如果要升级,请按照屏幕提示进行)。抱歉,我没有提到,但是 matplotlib 不支持 python3。 GitHub上有一个不稳定的版本,但我不推荐它。别担心,python2 还不错。请记住 input() 是 raw_input!
    【解决方案4】:

    我最终下载了 anaconda 并使用了它附带的 python 解释器,因为 anaconda 带有 matplotlib 和许多其他感兴趣的 python 包。

    【讨论】:

      【解决方案5】:

      pip 命令通常用于 Python 2。使用 pip3 代替将库安装在 python 3.X 路径中

      这应该可以 pip3 安装 matplotlib

      【讨论】:

        【解决方案6】:

        在 python 3.6 中对我有用的解决方案如下

        py -m pip install matplotlib
        

        【讨论】:

          【解决方案7】:

          Matplotlib 文件在 ~/.local/lib/python3.6/site-packages/ 中下载,而不是在 /usr/lib/python3.6/ 中。 试试命令:

          sudo cp -r ~/.local/lib/python3.6/site-packages/* /usr/lib/python3.6/
          

          【讨论】:

            猜你喜欢
            • 2018-06-15
            • 1970-01-01
            • 1970-01-01
            • 2020-06-18
            • 1970-01-01
            • 2021-11-29
            • 1970-01-01
            • 2021-01-24
            • 2014-03-14
            相关资源
            最近更新 更多