2013-10-07 10 views
8

Ich kann nicht import pylab mit der neuesten Version von Anaconda (Linux 64 Bit). Andere Pakete scheinen gut zu funktionieren. (Anmerkung: Ich habe nicht sudo Zugang)Anaconda: Kann nicht importiert werden pylab

In [1]: import pylab as pl 
--------------------------------------------------------------------------- 
ImportError        Traceback (most recent call last) 
<ipython-input-6-2cf12a0af6ff> in <module>() 
----> 1 import pylab as pl 

/home/josh/installs/conda/1.7.0/lib/python2.7/site-packages/pylab.py in <module>() 
----> 1 from matplotlib.pylab import * 
     2 import matplotlib.pylab 
     3 __doc__ = matplotlib.pylab.__doc__ 

/home/josh/installs/conda/1.7.0/lib/python2.7/site-packages/matplotlib/pylab.py in <module>() 
    267 from numpy.linalg import * 
    268 
--> 269 from matplotlib.pyplot import * 
    270 
    271 # provide the recommended module abbrevs in the pylab namespace 

/home/josh/installs/conda/1.7.0/lib/python2.7/site-packages/matplotlib/pyplot.py in <module>() 
    96 
    97 from matplotlib.backends import pylab_setup 
---> 98 _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup() 
    99 
    100 

/home/josh/installs/conda/1.7.0/lib/python2.7/site-packages/matplotlib/backends/__init__.pyc in pylab_setup() 
    23   backend_name = 'matplotlib.backends.%s'%backend_name.lower() 
    24  backend_mod = __import__(backend_name, 
---> 25        globals(),locals(),[backend_name]) 
    26 
    27  # Things we pull in from all backends 

/home/josh/installs/conda/1.7.0/lib/python2.7/site-packages/matplotlib/backends/backend_qt4agg.py in <module>() 
    11 
    12 from backend_agg import FigureCanvasAgg 
---> 13 from backend_qt4 import QtCore, QtGui, FigureManagerQT, FigureCanvasQT,\ 
    14  show, draw_if_interactive, backend_version, \ 
    15  NavigationToolbar2QT 

/home/josh/installs/conda/1.7.0/lib/python2.7/site-packages/matplotlib/backends/backend_qt4.py in <module>() 
    23  figureoptions = None 
    24 
---> 25 from qt4_compat import QtCore, QtGui, _getSaveFileName, __version__ 
    26 
    27 backend_version = __version__ 

/home/josh/installs/conda/1.7.0/lib/python2.7/site-packages/matplotlib/backends/qt4_compat.py in <module>() 
    34 # Now perform the imports. 
    35 if QT_API in (QT_API_PYQT, QT_API_PYQTv2): 
---> 36  import sip 
    37  if QT_API == QT_API_PYQTv2: 
    38   if QT_API_ENV == 'pyqt': 

ImportError: No module named sip 

Wenn ich versuche,

> conda install sip 

ich:

Error: No packages found matching: sip 

Ich habe auch Fehler mit:

$ pip install sip              1 
Downloading/unpacking sip 
    You are installing a potentially insecure and unverifiable file. Future v 
ersions of pip will default to disallowing insecure files.     
    Downloading sip-4.15.2.zip (899kB): 899kB downloaded 
    Running setup.py egg_info for package sip 
    Traceback (most recent call last): 
     File "<string>", line 16, in <module> 
    IOError: [Errno 2] No such file or directory: '/tmp/pip_build_josh/ 
sip/setup.py'                
    Complete output from command python setup.py egg_info: 
    Traceback (most recent call last): 

    File "<string>", line 16, in <module> 

IOError: [Errno 2] No such file or directory: '/tmp/pip_build_josh/sip/ 
setup.py'                 

---------------------------------------- 
Cleaning up... 
Command python setup.py egg_info failed with error code 1 in /tmp/pip_build 
_josh/sip                
Storing complete log in /home/josh/.pip/pip.log 

Irgendwelche Gedanken warum?

+0

Sie scheinen 'PyQt' nicht richtig installiert zu haben, verwenden Sie ein anderes Backend. – tacaswell

+0

Danke @tcaswell. Welches andere Backend würden Sie empfehlen? – Josh

+1

Die snarky (aber meistens richtige) Antwort ist, für welche Sie die Abhängigkeiten installiert haben. Versuchen Sie 'tkagg',' wxagg' oder 'gtk3agg' – tacaswell

Antwort

10

hatten nur dieses Problem, und es wurde im Zusammenhang mit welcher qt Backend matplotlib zu verwenden versucht, versuchen:

import PyQt4 

Wenn Sie Sie wahrscheinlich nicht PyQt4 haben haben pyside

import PySide 

Wenn Dies ist der Fall, den Sie brauchen, um die matplotlib.rcParams['backend.qt4'] == 'PySide' nicht 'PyQt4' einzustellen. Sie können dies auch in Ihrer matplotlibrc Datei tun (~/.matplotlib/matplotlibrc)

# find and change line: 
backend.qt4 : PySide 

Hinweis: Wenn Sie Sie es aus dem matplotlib Quellverzeichnis nicht die matplotlibrc Datei kann

import os 
import matplotlib 
mpl_dir = os.path.dirname(matplotlib.__file__) 
os.system("cp {}/mpl-data/matplotlibrc ~/.matplotlib/".format(mpl_dir)) 
kopieren
+0

Es gibt ein offenes Problem für Anaconda für dieses Problem: https://github.com/ContinuumIO/anaconda-issues/issues/8 – user2304916