【问题标题】:Errors when installing MatPlotLib安装 MatPlotLib 时出错
【发布时间】:2021-02-20 22:26:31
【问题描述】:

我试图安装包 epispot 来模拟这次 COVID-19 爆发,但是当我运行 pip install epispot 时,它安装了所有依赖项,包括 MatPlotLib。当它尝试安装 matplotlib 时,它给了我一个非常大的错误,它占据了命令提示符高度的近四分之一(即滚动条)。然后我尝试只安装matplotlib,然后打算安装epispot,但是安装matplotlib时出现了同样的错误。我更新了我的点子,看看这是否是问题所在,但它没有改变。有没有其他方法可以安装 matplotlib?并且还会安装所有依赖项。我在 Windows 计算机上,错误出现在此行之后:Building wheel for matplotlib (setup.py) ...,如果这有帮助的话。

更新 - 对于@rocketsfallonrocketfalls,错误是Building wheel for matplotlib (setup.py) ... error ERROR: Command errored out with exit status 1: command: 'C:\Users\user \AppData\Local\Programs\Python\Python39\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\user \\AppData\\Local\\Temp\\pip-install-66pka4wo\\matplotlib\\setup.py'"'"'; __file__='"'"'C:\\Users\\user \\AppData\\Local\\Temp\\pip-install-66pka4wo\\matplotlib\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\user \AppData\Local\Temp\pip-wheel-o1u86tpl' cwd: C:\Users\user \AppData\Local\Temp\pip-install-66pka4wo\matplotlib\ Complete output (571 lines):

【问题讨论】:

  • 你是如何安装 Python 的?如果您已通过 conda 安装它并且“conda install matplotlib”不起作用,您可以尝试“pip install matploblib” - 或相反。也许你应该分享你得到的错误,以便我们更好地理解它。
  • 不,我使用的是pip install matplotlib,而不是conda install matplotlib
  • @rocketsfallonrocketfalls,我在问题中添加了错误。

标签: python matplotlib pip package


【解决方案1】:

我找到了!尽管 Python 3.9 没有用于安装 Matplotib 的轮子是一个问题,也是主要问题(感谢 @rocketsfallonrocketfalls 和 @Mr. T 发现了这一点),但在安装 NumPy 时似乎在 windows 上存在问题,这是另一个依赖epispot 包,如果你还记得的话,它是我试图安装的包。因此,在使用 Python 3.8 时,它给了我一个不同的错误。您可以在这里找到详细信息 - https://github.com/numpy/numpy/issues/16739

现在,解决这个问题,至少,我正在使用的解决方案是使用 Anaconda 的 Python 版本,然后将来自 Github 的源代码中的 epispot 包克隆到项目目录中(我可以删除所有额外的文件只是epispot文件夹)。由于 Numpy 带有 Anaconda,我有 numpy、matplotlib 和 epispot。

【讨论】:

    【解决方案2】:

    @Mr.T 已经阐明了为什么会发生这种情况(目前还没有用于为 Python 3.9 安装 Matplotlib 的 Python 轮),我想添加作为解决方案要做的事情。

    不删除您目前所拥有的最简单的解决方案是使用虚拟环境。虚拟环境基本上是您可以轻松更改的环境,您可以在每个环境中使用不同版本的 Python,并安装所有不同的 API/模块,这样它们就不会相互交叉。 因此,您可以使用 Python 3.7 创建一个虚拟环境并在其上轻松安装 Matplotlib。 这是一个有用的链接,展示了如何使用 pip 进行操作,非常简单:

    How to create virtual environment for python 3.7.0?

    但由于我喜欢 conda 的便利性,我建议您卸载 Python 并使用 Anaconda 重新安装。默认情况下,您需要的大多数东西都已安装,因此您无需关心是否正确安装它们。并且管理虚拟环境也不需要任何进一步的安装,所以当你需要创建一个新环境时,你只需使用 conda 环境。

    【讨论】:

    • 是的,这对@roketsfallonrocketfalls 和@Mr. 有很大帮助。 T,但是,我不使用python 3.7,无论如何我要在3.8中安装它,还是一样。另外,既然您已经提到了这一点,那么在没有 virtualenv 的情况下,是否可以将 pip install 用于 python 3.8?
    • @Quantalabs,您可以在您的 PC 上安装多个 Python 版本。它实际上就像在运行之前找到正确的可执行文件一样简单。但是,当您有多个没有虚拟环境的 Python 版本时,可能会出现很多问题。因为您可能有路径(对于模块)和系统默认问题。您在运行代码时可能会遇到错误,在您意识到问题是由多个 Python 安装之间的冲突引起之前,您可能会浪费时间寻找错误的解决方案。所以我不推荐它,但它是可能的。
    猜你喜欢
    • 2023-03-03
    • 2012-10-06
    • 2021-02-07
    • 1970-01-01
    • 2016-02-04
    • 1970-01-01
    • 2020-02-15
    • 2022-01-17
    相关资源
    最近更新 更多