skillfed

ipympl

Matplotlib Jupyter Extension

ipympl v0.10.0 2.2M downloads/30d#3,191 on PyPI1,656
Permissive license Copyright (c) 2016, Matplotlib Contributors All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions… (full text in the JSON record) Active released

What it is and what it does

ipympl is a Jupyter extension that brings matplotlib's interactive plotting capabilities into Jupyter notebooks and JupyterLab. It works by registering itself as a matplotlib backend that renders plots as Jupyter interactive widgets instead of static images. When you use the `%matplotlib ipympl` magic command, subsequent matplotlib plots become interactive—you can pan, zoom, and interact with them directly in the notebook.

The package depends on ipython, ipywidgets, matplotlib, numpy, pillow, and traitlets. It's designed for scientific and data analysis workflows where interactive exploration of plots is valuable. The figure canvas is a proper Jupyter widget, meaning it can be positioned within interactive widget layouts alongside other controls, enabling integrated interactive dashboards within notebooks.

Use it for:

  • Exploratory data analysis in Jupyter notebooks where interactive pan/zoom of plots improves investigation workflow
  • Building interactive dashboards combining matplotlib plots with Jupyter widgets for parameter adjustment
  • Scientific research notebooks requiring interactive visualization of computational results
  • Educational notebooks where students can interact with plots to understand data relationships

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

ipympl enables interactive matplotlib plots in Jupyter notebooks and JupyterLab by providing a Jupyter widget backend that integrates matplotlib's rendering with the Jupyter interactive widget framework.

Yes. ipympl is actively maintained, has no known vulnerabilities, carries a permissive BSD license, and solves a real problem for Jupyter users who want interactive matplotlib plots. Install friction is low and dependencies are standard. Recommended for any Jupyter-based data analysis or visualization workflow.

Install

ipympl on PyPI

pip

pip install ipympl

uv

uv add ipympl

poetry

poetry add ipympl

Installing ipympl

Before you install

Low install friction with a pure-Python wheel distribution. The package is actively maintained with a recent commit history and is part of the matplotlib project ecosystem. Runtime dependencies are all standard scientific Python libraries.

License in practice

BSD 3-Clause permissive license allows unrestricted use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.

Quickstart

pip install ipympl

# In a Jupyter notebook cell:
%matplotlib ipympl
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [1, 4, 9])
plt.show()

Requires JupyterLab >= 3 for full support; JupyterLab 2 requires manual extension installation. Requires matplotlib >= 3.5.0 for ipympl 0.10.0.

Verify before relying

  • Whether the interactive widget canvas can be embedded in custom Jupyter widget layouts as described
  • Performance characteristics when rendering large or complex plots in notebook environments

Package facts

License Copyright (c) 2016, Matplotlib Contributors All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions… (full text in the JSON record) (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 6 — ipython, ipywidgets, matplotlib, numpy, pillow, traitlets
Maintenance actively maintained — 205 days since the last release
Last repo commit
First released
Downloads 2,245,333/month — #3,191 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: ipympl-0.10.0-py3-none-any.whl

Keywords: graphics, ipython, jupyter, widgets

Development Status :: 4 - BetaFramework :: IPythonFramework :: JupyterFramework :: Jupyter :: JupyterLabFramework :: Jupyter :: JupyterLab :: 3Framework :: Jupyter :: JupyterLab :: 4Framework :: Jupyter :: JupyterLab :: ExtensionsFramework :: Jupyter :: JupyterLab :: Extensions :: PrebuiltIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Topic :: Multimedia :: Graphics

Tags

interactive matplotlib jupytermatplotlib notebook widgetjupyter lab plottinginteractive plots jupytermatplotlib ipympl backendjupyter interactive graphicsmatplotlib jupyter extension
jupyter-extensioninteractive-visualizationscientific-computing

More Graphics packages