# Module: `core.magics.pylab`

Implementation of magic functions for matplotlib/pylab support.

## 1 Class

class `IPython.core.magics.pylab.``PylabMagics`(shell=None, **kwargs)

  Bases: `IPython.core.magic.Magics`

  Magics related to matplotlib’s pylab support

  `matplotlib`(line='')

        %matplotlib [gui]

    Set up matplotlib to work interactively.

    This function lets you activate matplotlib interactive support at any point during an IPython session. It does not import anything into the interactive namespace.

    If you are using the inline matplotlib backend in the IPython Notebook you can set which figure formats are enabled using the following:

        In [1]: from IPython.display import set_matplotlib_formats

        In [2]: set_matplotlib_formats('pdf', 'svg')

    See the docstring of IPython.display.set_matplotlib_formats and IPython.display.set_matplotlib_close for more information on changing the behavior of the inline backend.

    Examples

    To enable the inline backend for usage with the IPython Notebook:

        In [1]: %matplotlib inline

    In this case, where the matplotlib default is TkAgg:

        In [2]: %matplotlib
        Using matplotlib backend: TkAgg

    But you can explicitly request a different GUI backend:

        In [3]: %matplotlib qt

    positional arguments:
      gui Name of the matplotlib backend to use (‘gtk’, ‘gtk3’, ‘inline’,
        ‘nbagg’, ‘osx’, ‘qt’, ‘qt4’, ‘qt5’, ‘tk’, ‘wx’). If given, the corresponding matplotlib backend is used, otherwise it will be matplotlib’s default (which you can set in your matplotlib config file).
  `pylab`(line='')

        %pylab [--no-import-all] [gui]

    Load numpy and matplotlib to work interactively.

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

    %pylab makes the following imports:

        import numpy
        import matplotlib
        from matplotlib import pylab, mlab, pyplot
        np = numpy
        plt = pyplot

        from IPython.display import display
        from IPython.core.pylabtools import figsize, getfigs

        from pylab import *
        from numpy import *

    If you pass –no-import-all, the last two * imports will be excluded.

    See the %matplotlib magic for more details about activating matplotlib without affecting the interactive namespace.

    positional arguments:
      gui Name of the matplotlib backend to use (‘gtk’, ‘gtk3’,
        ‘inline’, ‘nbagg’, ‘osx’, ‘qt’, ‘qt4’, ‘qt5’, ‘tk’, ‘wx’). If given, the corresponding matplotlib backend is used, otherwise it will be matplotlib’s default (which you can set in your matplotlib config file).
    optional arguments:

      `--no-import-all`
      | Prevent IPython from performing `import *` into the interactive namespace. You can govern the default behavior of this flag with the InteractiveShellApp.pylab_import_all configurable.