Python import matplotlib.pyplot提供ImportError:dlopen(…;)库未加载libpng15.15.dylib

Python import matplotlib.pyplot提供ImportError:dlopen(…;)库未加载libpng15.15.dylib,python,macos,matplotlib,Python,Macos,Matplotlib,我确实遵循了答案中给出的说明,但这并没有解决我的问题(而且我没有足够的声誉来评论该帖子中的Q或A)。不管怎样,事情是这样的: 我试着做: import matplotlib.pyplot 作为回报,我得到: Traceback (most recent call last): File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 3032

我确实遵循了答案中给出的说明,但这并没有解决我的问题(而且我没有足够的声誉来评论该帖子中的Q或A)。不管怎样,事情是这样的:

我试着做:

import matplotlib.pyplot
作为回报,我得到:

Traceback (most recent call last):
  File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 3032, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-3-eff513f636fd>", line 1, in <module>
    import matplotlib.pyplot as plt
  File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/pyplot.py", line 27, in <module>
    import matplotlib.colorbar
  File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/colorbar.py", line 34, in <module>
    import matplotlib.collections as collections
  File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/collections.py", line 27, in <module>
    import matplotlib.backend_bases as backend_bases
  File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/backend_bases.py", line 56, in <module>
    import matplotlib.textpath as textpath
  File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/textpath.py", line 22, in <module>
    from matplotlib.mathtext import MathTextParser
  File "/Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/mathtext.py", line 63, in <module>
    import matplotlib._png as _png
ImportError: dlopen(/Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/_png.so, 2): Library not loaded: libpng15.15.dylib
  Referenced from: /Users/russellrichie/anaconda/lib/python2.7/site-packages/matplotlib/_png.so
  Reason: image not found
编辑:


凯尔的建议奏效了!我刚刚试过“conda remove matplotlib”,“pip install matplotlib”,然后是“conda install matplotlib”,还有presto!伙计,你不知道这个问题困扰我多久了。祝福大家。

一些python包动态链接到本机c库。更新其中一个库后,链接可能会断开,并给出有关缺少动态库的奇怪错误消息,如问题中的错误消息所示

基本上,在更新本机库之后,有时还必须重新生成python包(这里是
matplotlib

上述说法大体上是正确的。如果您使用
conda
作为python发行版,事情通常就不那么复杂了:

对于扩展包
conda
还维护所需的c库。只要您仅使用
conda install
conda update
安装这些软件包,您就不应该遇到这些问题

对于
numpy
scipy
matplotlib
以及更多内容,我建议首先尝试
conda搜索
,看看是否有符合您需求的
conda
配方。对于大多数用户来说,
conda安装
将是比
pip安装
更好的选择

要确保只安装了
conda
的版本,您可以执行以下操作

conda remove matplotlib
pip uninstall matplotlib
conda install matplotlib

之后,这个问题应该不会再出现了。

我有这个问题,但这是因为我设置了

export DYLD_LIBRARY_PATH=“/Users/charlesmartin14/anaconda/lib”:$DYLD_LIBRARY_PATH


删除此设置并重新启动shell修复了它

我也遇到了此问题。我更新了我的Anaconda Navigator,下次使用
matplotlib.pyplot
打开项目时,我遇到了类似的问题。对我起作用的是:

conda install libpng

您是如何安装matplotlib的?尝试使用
conda remove matplotlib
pip uninstall matplotlib
卸载,然后查看
conda install matplotlib
是否解决了此问题,希望其他人也会这样做,这样您就可以让代表在提到的其他线程中询问/评论。在我首先重新安装libpng之前,删除和重新安装matplotlib不起作用(
brew取消libpng的链接
,然后
brew安装libpng
)。然后我
conda删除matplotlib
conda安装matplotlib
%matplotlib内联
不再生成任何错误。@AlexPerrier Homebrew有一种非常不同的安装python包的方法,它们遵循的原则是,PIP是所有python实现的默认包安装程序,包括来自下游分销商的产品,使PIP成为Python的默认包管理器。@AMR,感谢您的通知。我决定把有关这个问题的一些信息放在一个答案中。当我发表评论时,我并不认为这个问题会变得如此流行。
conda install libpng