在 python 3.6 中安装 matplotlib 的问题

Problems with installing matplotlib in python 3.6

我正在努力自学 python,但我感到力不从心。首先,我正在开发 mac,它已经安装了 python 2.7。

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

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

python3.6 -m pip install matplotlib

我输入了这个,似乎软件包正在安装,但我最终得到了某种错误代码:

Command "python setup.py egg_info" failed with error code 1 in [folder].

我尝试打开 IDLE 并输入 "import matplotlib",但出现错误:"no module named matplotlib"。我也尝试输入 "import matplotlib.pyplot as plt",但我得到了同样的错误。

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

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

尝试升级设置工具

--upgrade setuptools

easy_install -U setuptools

或升级pip

pip install --upgrade pip

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

virtualenv myenv

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

. myenv/bin/activate

不要错过开头的那个点(后跟 space)!正如另一个答案所说,你应该做的第一件事就是升级 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的特定path/version。只是 运行 像这样:

python

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

pip 命令通常用于 Python 2. 使用 pip3 代替在 python 3.X 路径

中安装库

这应该有效 pip3 安装 matplotlib

我在安装过程中也遇到了很多问题
似乎 matplotlib 的版本 2 与 Python 版本 3.

不兼容

最后,我成功地指定了 matplotlib 版本 3,如下所示:

sudo apt-get install python3-matplotlib

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

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

py -m pip install matplotlib

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

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