如何解决M1 Mac中的此导入matplotlib问题?

gblwokeq  于 2022-11-15  发布在  Mac
关注(0)|答案(3)|浏览(248)

我买了Mac M1,现在正在设置我的python环境。

  • 我安装了Rosetta 2,并将终端设置为Rosetta 2
  • 我用brew安装了pyenv
  • 已安装带有brew的Sqlite3
  • 已安装带有pyenv的python 3.9.4(设置为全局)
  • 已安装带有brew的Visual Studio代码
  • 在终端(arm64)中安装了带pip的panda(问题已解决,谢谢hd1

现在我尝试在终端(arm64)中“pip install matplotlib”后导入matplotlib,它显示此错误:

ImportError                               Traceback (most recent call last)
/var/folders/r5/wq0wq8mx0d56rbrbs38jt94w0000gn/T/ipykernel_54247/646680447.py in <module>
      1 import pandas as pd
      2 
----> 3 import matplotlib.pyplot as plt

~/.pyenv/versions/3.9.4/lib/python3.9/site-packages/matplotlib/__init__.py in <module>
    155 
    156 
--> 157 _check_versions()
    158 
    159 

~/.pyenv/versions/3.9.4/lib/python3.9/site-packages/matplotlib/__init__.py in _check_versions()
    149             ("pyparsing", "2.2.1"),
    150     ]:
--> 151         module = importlib.import_module(modname)
    152         if LooseVersion(module.__version__) < minver:
    153             raise ImportError("Matplotlib requires {}>={}; you have {}"

~/.pyenv/versions/3.9.4/lib/python3.9/importlib/__init__.py in import_module(name, package)
    125                 break
    126             level += 1
--> 127     return _bootstrap._gcd_import(name[level:], package, level)
    128 
    129 

ImportError: dlopen(/Users/yeung/.pyenv/versions/3.9.4/lib/python3.9/site-packages/kiwisolver.cpython-39-darwin.so, 2): no suitable image found.  Did find:
    /Users/yeung/.pyenv/versions/3.9.4/lib/python3.9/site-packages/kiwisolver.cpython-39-darwin.so: mach-o, but wrong architecture
    /Users/yeung/.pyenv/versions/3.9.4/lib/python3.9/site-packages/kiwisolver.cpython-39-darwin.so: mach-o, but wrong architecture

虽然它说它是错误的架构,我尝试了Pandas的解决方案在这里.它基本上是pip卸载它,然后确保它是安装与我的arm64终端.我卸载并清除该高速缓存,然后“pip安装”与我的arm64终端,但仍然这个错误.
有什么线索吗?同样,我使用的是VisualStudio代码和Jupyter笔记本。

1wnzp6jl

1wnzp6jl1#

尝试这些代码,它们对我很有效。因为你使用的是pyenv,所以你可以只使用pyenv uninstall 3.9.4来清除示例,然后重新安装pyenv install 3.9.4。然后,尝试下面的代码。

python -m pip install cython   
python -m pip install --no-binary :all: --no-use-pep517 numpy
brew install libjpeg
python -m pip install matplotlib

代码的起源来自这里:https://flutterq.com/pip-install-matplotlib-fails-on-m1-mac/

lpwwtiir

lpwwtiir2#

我在我全新的MacBook Pro M1上遇到了这个非常令人沮丧的错误。
经过很长时间的挣扎,我发现我必须卸载所有安装的PIP包。

pip3 freeze | xargs pip3 uninstall -y

然后只有,我可以和平地重新安装和导入所有我最喜欢的包。

a7qyws3x

a7qyws3x3#

尝试卸载,然后重新安装出现错误的软件包。在你的例子中,它是“kiwisolver”。在我的例子中,它是psutil。所以下面的方法对我很有效:

pip uninstall psutil
pip install psutil

只需将psutil替换为“任何出现错误的软件包”即可。

相关问题