2

Running Python 2.7 and trying to get plotting to work the tutorials recommend the below command.

from matplotlib import pyplot as plt

Works fine when run from the command line

python -c "from matplotlib import pyplot as plt"

but I get an error when trying to run it inside a Jupyter Notebook.

---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-21-1d1446f6fa64> in <module>()
----> 1 from matplotlib import pyplot as plt
/usr/local/lib/python2.7/dist-packages/matplotlib/pyplot.py in <module>()
 112 
 113 from matplotlib.backends import pylab_setup
--> 114 _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
 115 
 116 _IP_REGISTERED = None
/usr/local/lib/python2.7/dist-packages/matplotlib/backends/__init__.pyc in pylab_setup()
 30 # imports. 0 means only perform absolute imports.
 31 backend_mod = __import__(backend_name,
---> 32 globals(),locals(),[backend_name],0)
 33 
 34 # Things we pull in from all backends
/usr/local/lib/python2.7/dist-packages/ipykernel/pylab/backend_inline.py in <module>()
 154 configure_inline_support(ip, backend)
 155 
--> 156 _enable_matplotlib_integration()
/usr/local/lib/python2.7/dist-packages/ipykernel/pylab/backend_inline.py in _enable_matplotlib_integration()
 152 backend = get_backend()
 153 if ip and backend == 'module://%s' % __name__:
--> 154 configure_inline_support(ip, backend)
 155 
 156 _enable_matplotlib_integration()
/usr/local/lib/python2.7/dist-packages/IPython/core/pylabtools.pyc in configure_inline_support(shell, backend)
 359 except ImportError:
 360 return
--> 361 from matplotlib import pyplot
 362 
 363 cfg = InlineBackend.instance(parent=shell)
ImportError: cannot import name pyplot

The following command works

import matplotlib

But the following gives me a similar error

import matplotlib.pyplot
asked Aug 9, 2016 at 10:10

1 Answer 1

4

You can also use the %matplotlib inline magic, but it has to be preceded by the pure %matplotlib line:

Works (figures in new window)

%matplotlib
import matplotlib.pyplot as plt

Works (inline figures)

%matplotlib
%matplotlib inline
import matplotlib.pyplot as plt

Does not work

%matplotlib inline
import matplotlib.pyplot as plt

Also: Failure to import matplotlib.pyplot in jupyter (but not ipython) seems to be the same issue. It looks like a recently introduced bug in the ipykernel. Maybe someone mark this or the other question as duplicate, thx.

answered Aug 9, 2016 at 13:16

Comments

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.