Skip to main content

Matplotlib Jupyter Extension

Project description

ipympl

Test Status Latest PyPI version Latest conda-forge version Latest npm version Binder Gitter

Leveraging the Jupyter interactive widgets framework, ipympl enables the interactive features of matplotlib in the Jupyter notebook and in JupyterLab.

Besides, the figure canvas element is a proper Jupyter interactive widget which can be positioned in interactive widget layouts.

Usage

To enable the ipympl backend, simply use the matplotlib Jupyter magic:

%matplotlib widget

Documentation

See the documentation at: https://matplotlib.org/ipympl/

Example

See the example notebook for more!

matplotlib screencast

Installation

With conda:

conda install -c conda-forge ipympl

With pip:

pip install ipympl

Use in JupyterLab

If you want to use ipympl in JupyterLab, we recommend using JupyterLab >= 3.

If you use JupyterLab 2, you still need to install the labextension manually:

conda install -c conda-forge nodejs
jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter-matplotlib

Install an old JupyterLab extension

If you are using JupyterLab 1 or 2, you will need to install the right jupyter-matplotlib version, according to the ipympl and jupyterlab versions you installed. For example, if you installed ipympl 0.5.1, you need to install jupyter-matplotlib 0.7.0, and this version is only compatible with JupyterLab 1.

conda install -c conda-forge ipympl==0.5.1
jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter-matplotlib@0.7.0

Versions lookup table:

ipympl jupyter-matplotlib JupyterLab Matplotlib
0.9.3+ 0.11.3+ >=2,<5 3.4.0>=
0.9.0-2 0.11.0-2 >=2,<5 3.4.0>= <3.7
0.8.8 0.10.x >=2,<5 3.3.1>= <3.7
0.8.0-7 0.10.x >=2,<5 3.3.1>=, <3.6
0.7.0 0.9.0 >=2,<5 3.3.1>=
0.6.x 0.8.x >=2,<5 3.3.1>=, <3.4
0.5.8 0.7.4 >=1,<3 3.3.1>=, <3.4
0.5.7 0.7.3 >=1,<3 3.2.*
... ... ...
0.5.3 0.7.2 >=1,<3
0.5.2 0.7.1 >=1,<2
0.5.1 0.7.0 >=1,<2
0.5.0 0.6.0 >=1,<2
0.4.0 0.5.0 >=1,<2
0.3.3 0.4.2 >=1,<2
0.3.2 0.4.1 >=1,<2
0.3.1 0.4.0 >=0<2

For a development installation (requires nodejs):

Create a dev environment that has nodejs installed. The instructions here use mamba but you can also use conda.

mamba env create --file dev-environment.yml
conda activate ipympl-dev

Install the Python Packge

pip install -e .

When developing your extensions, you need to manually enable your extensions with the notebook / lab frontend. For lab, this is done by the command:

jupyter labextension develop --overwrite .
jlpm build

For classic notebook, you need to run:

jupyter nbextension install --py --symlink --sys-prefix --overwrite ipympl
jupyter nbextension enable --py --sys-prefix ipympl

How to see your changes

Typescript:

If you use JupyterLab to develop then you can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the widget.

# Watch the source directory in one terminal, automatically rebuilding when needed
jlpm watch
# Run JupyterLab in another terminal
jupyter lab

After a change wait for the build to finish and then refresh your browser and the changes should take effect.

Python:

If you make a change to the python code then you will need to restart the notebook kernel to have it take effect.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipympl-0.9.4.tar.gz (58.6 MB view details)

Uploaded Source

Built Distribution

ipympl-0.9.4-py3-none-any.whl (516.3 kB view details)

Uploaded Python 3

File details

Details for the file ipympl-0.9.4.tar.gz.

File metadata

  • Download URL: ipympl-0.9.4.tar.gz
  • Upload date:
  • Size: 58.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for ipympl-0.9.4.tar.gz
Algorithm Hash digest
SHA256 cfb53c5b4fcbcee6d18f095eecfc6c6c474303d5b744e72cc66e7a2804708907
MD5 051241237db9c73ec6a18c8bc8811767
BLAKE2b-256 366405a5051f1fe457331f3d4353ad28e2e2ec4c98caaee0a087f0108ab9a40c

See more details on using hashes here.

File details

Details for the file ipympl-0.9.4-py3-none-any.whl.

File metadata

  • Download URL: ipympl-0.9.4-py3-none-any.whl
  • Upload date:
  • Size: 516.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for ipympl-0.9.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5b0c08c6f4f6ea655ba58239363457c10fb921557f5038c1a46db4457d6d6b0e
MD5 5c373a11b70238ecf9e7bbbf16992f8e
BLAKE2b-256 d850d6f4e7eb0e7d198b431d8259bc9a6035f879d4df487448b196cdf1e84155

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page