IPython Documentation

Table Of Contents

Previous topic


Next topic


This Page


Module: core.magics.pylab

Inheritance diagram for IPython.core.magics.pylab:

Implementation of magic functions for matplotlib/pylab support.


class IPython.core.magics.pylab.PylabMagics(shell)

Bases: IPython.core.magic.Magics

Magics related to matplotlib’s pylab support


Print docstring if incorrect arguments were passed

default_option(fn, optstr)

Make an entry in the options_table for fn, with value optstr


Format a string for latex inclusion.

magics = {'cell': {}, 'line': {'pylab': 'pylab'}}
options_table = None
parse_options(arg_str, opt_str, *long_opts, **kw)

Parse options passed to an argument string.

The interface is similar to that of getopt(), but it returns back a Struct with the options as keys and the stripped argument string still as a string.

arg_str is quoted as a true sys.argv vector by using shlex.split. This allows us to easily expand variables, glob files, quote arguments, etc.


-mode: default ‘string’. If given as ‘list’, the argument string is returned as a list (split on whitespace) instead of a string.

-list_all: put all option values in lists. Normally only options appearing more than once are put in a list.

-posix (True): whether to split the input line in POSIX mode or not, as per the conventions outlined in the shlex module from the standard library.


Load numpy and matplotlib to work interactively.

%pylab [GUINAME]

This function lets you activate pylab (matplotlib, numpy and interactive support) at any point during an IPython session.

It will import at the top level numpy as np, pyplot as plt, matplotlib, pylab and mlab, as well as all names from numpy and pylab.

If you are using the inline matplotlib backend for embedded figures, you can adjust its behavior via the %config magic:

# enable SVG figures, necessary for SVG+XHTML export in the qtconsole
In [1]: %config InlineBackend.figure_format = 'svg'

# change the behavior of closing all figures at the end of each
# execution (cell), or allowing reuse of active figures across
# cells:
In [2]: %config InlineBackend.close_figures = False
Parameters :

guiname : optional

One of the valid arguments to the %gui magic (‘qt’, ‘wx’, ‘gtk’, ‘osx’ or ‘tk’). If given, the corresponding Matplotlib backend is used, otherwise matplotlib’s default (which you can override in your matplotlib config file) is used.


In this case, where the MPL default is TkAgg:

In [2]: %pylab

Welcome to pylab, a matplotlib-based Python environment.
Backend in use: TkAgg
For more information, type 'help(pylab)'.

But you can explicitly request a different backend:

In [3]: %pylab qt

Welcome to pylab, a matplotlib-based Python environment.
Backend in use: Qt4Agg
For more information, type 'help(pylab)'.
registered = True
shell = None