2015-03-04 12 views
21

I am aware that this exact same question has been asked before. Ich habe die Anweisungen in der Antwort dort, und es hat mein Problem nicht gelöst (und ich habe nicht genug Ruf, um nur das Q oder A in diesem Thread zu kommentieren). Wie auch immer, hier ist was los:Import matplotlib.pyplot gibt ImportError: dlopen (...) Bibliothek nicht geladen libpng15.15.dylib

ich versuchen zu tun:

import matplotlib.pyplot 

Und im Gegenzug erhalte ich:

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 

Meine Python-Version:

2.7.7 |Anaconda 2.0.1 (x86_64)| (default, Jun 2 2014, 12:48:16) [GCC 4.0.1 (Apple Inc. build 5493)] 

EDIT:

cels Vorschlag hat funktioniert! Ich habe gerade versucht "conda remove matplotlib", "pip install matplotlib" und dann "conda install matplotlib", und presto! Mann, du hast keine Ahnung, wie lange dieses Problem mich geärgert hat. Segne euch alle.

+8

Wie hast du 'matplotlib' installiert? Versuchen Sie die Deinstallation mit 'conda remove matplotlib' und' pip uninstall matplotlib' und schauen Sie nach, ob 'conda install matplotlib' dieses Problem löst. – cel

+1

** upvoted **, und hoffentlich andere werden, so können Sie den Vertreter zu fragen/kommentieren in dem anderen erwähnten Thread. –

+0

@Russell Richie, ich denke, das ist eine Frage der nicht 'libpng15.15.dylib' installiert. was darfst du nicht? Ich glaube, es ist ein Teil von 'php55 +' –

Antwort

21

Einige Python-Pakete sind dynamisch mit nativen c-Bibliotheken verknüpft. Nach einem Update einer dieser Bibliotheken können Links brechen und Ihnen seltsame Fehlermeldungen über fehlende dynamische Bibliotheken geben, wie in der Fehlermeldung in der Frage zu sehen ist.

Grundsätzlich müssen Sie nach einem Update einer nativen Bibliothek manchmal auch Python-Pakete neu erstellen (hier matplotlib).

Die obige Aussage ist im Allgemeinen wahr. Wenn Sie conda als Ihre Python-Distribution verwenden, sind die Dinge normalerweise weniger kompliziert:

Für Erweiterungspakete conda hält auch erforderliche c-Bibliotheken. Solange Sie nur conda install und conda update für die Installation dieser Pakete verwenden, sollten Sie nicht auf diese Probleme stoßen.

Für numpy, scipy, matplotlib und viele mehr würde ich vorschlagen, conda search <library name> zuerst zu sehen, um zu versuchen, wenn es eine ist conda Rezept, das Ihren Bedürfnissen entspricht. Für die meisten Benutzer ist conda install <library name> eine bessere Option als pip install.

Um sicherzustellen, dass nur conda ‚s Version Sie tun können

installiert ist
conda remove matplotlib 
pip uninstall matplotlib 
conda install matplotlib 

Anschließend wird diese Ausgabe nicht mehr erscheinen soll.

1

ich dieses Problem hatte, aber es war, weil ich

Export DYLD_LIBRARY_PATH gesetzt hatte = "/ Users/charlesmartin14/anaconda/lib": $ DYLD_LIBRARY_PATH

diese Einstellung zu entfernen und einen Neustart der Shell es fest

2

Ich lief auch in dieses Problem. Ich aktualisierte meinen Anaconda-Navigator und das nächste Mal, als ich ein Projekt mit matplotlib.pyplot öffnete, stieß ich auf ein ähnliches Problem. Was für mich funktionierte war:

conda install libpng 
Verwandte Themen