2015-03-04 17 views
21

I am aware that this exact same question has been asked before. Ho seguito le istruzioni fornite nella risposta e non ha risolto il mio problema (e non ne ho abbastanza reputazione di commentare semplicemente la Q o A in quel thread). Ad ogni modo, ecco cosa sta succedendo:import matplotlib.pyplot dà ImportError: dlopen (...) Libreria non caricata libpng15.15.dylib

che cerco di fare:

import matplotlib.pyplot 

E in cambio ottengo:

versione
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 

mio Python:

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:

suggerimento di cel lavorato! Ho appena provato "conda remove matplotlib", "pip install matplotlib", e quindi "conda install matplotlib", e presto! Amico, non hai idea di quanto tempo questo problema mi abbia irritato. Dio vi benedica tutti.

+8

Come è stato installato 'matplotlib'? Prova a disinstallare con 'conda remove matplotlib' e' pip uninstall matplotlib' e poi verifica se 'conda install matplotlib' risolve questo problema. – cel

+1

** ha fatto un aumento **, e si spera che altri lo facciano in modo che tu possa ottenere il commento da chiedere/commentare nell'altro thread menzionato. –

+0

@Russell Richie, penso che si tratti di non aver installato 'libpng15.15.dylib'. quale non devi? Credo che sia parte di 'php55 +' –

risposta

21

Alcuni pacchetti Python si collegano dinamicamente alle librerie c native. Dopo un aggiornamento di una di queste librerie, i collegamenti possono rompersi e dare strani messaggi di errore sulle librerie dinamiche mancanti, come si vede nel messaggio di errore nella domanda.

Fondamentalmente, dopo un aggiornamento di una libreria nativa a volte è anche necessario ricostruire i pacchetti Python (qui matplotlib).

L'affermazione precedente è vera in generale. Se si utilizza conda come distribuzione Python, le cose sono in genere meno complicate:

Per i pacchetti di estensione conda mantiene anche le librerie c necessarie. Finché utilizzi solo conda install e conda update per installare quei pacchetti, non dovresti eseguire questi problemi.

Per numpy, scipy, matplotlib e molti altri vorrei suggerire di provare conda search <library name> per vedere se c'è una ricetta conda che soddisfa le vostre esigenze. Per la maggior parte degli utenti, conda install <library name> sarà un'opzione migliore rispetto a pip install.

Per assicurarsi che solo conda s' versione viene installata si può fare

conda remove matplotlib 
pip uninstall matplotlib 
conda install matplotlib 

Successivamente questo problema non dovrebbe apparire più.

1

Ho avuto questo problema, ma è stato perché avevo impostato

export DYLD_LIBRARY_PATH = "/ Users/charlesmartin14/Anaconda/lib": $ DYLD_LIBRARY_PATH

rimozione di questa impostazione e riavviare il guscio risolto

2

Mi sono imbattuto in questo problema pure. Ho aggiornato il mio Anaconda-Navigator e la prossima volta che ho aperto un progetto con matplotlib.pyplot, mi sono imbattuto in un problema simile. Ciò che ha funzionato per me è stato:

conda install libpng 
Problemi correlati