matplotlib / matplotlib/ipympl
Blank figures in Jupyter notebook
Nobody has claimed this yet.
- Dominant language
- Jupyter Notebook
- Stars
- 1.7k
- Forks
- 234
- PR merge metrics
- No merged PRs in 30d
Description
I have happily used interactive plots in jupyter notebooks for years with `%matplotlib notebook`. Unfortunately, since version 7 was introduced, I have experienced troubles with getting interactive plotting to work properly. I read that version 7 requires installing *ipympl* and `%matplotlib ipympl`.
Today, I set up a fresh virtual environment and installed *jupyter* and *ipympl*. Figures are opening, the controls appear, a figure title appears, but the figure contains no content. There is also no error message on the browser's developer console.
Steps to reproduce:
```bash
# Create virtual environment
python3 -m venv debug
source debug/bin/activate
# Install jupyter and ipympl
pip install jupyter ipympl matplotlib numpy
# Open notebook
jupyter notebook
```
Then I use the code from the [basic example](https://matplotlib.org/ipympl/)
```python
%matplotlib ipympl
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
x = np.linspace(0, 2*np.pi, 100)
y = np.sin(3*x)
ax.plot(x, y)
```
A white area is opening, the controls appear, but there is no figure content.
I have seen several similar issues on Stackoverflow, where the solution is usually to upgrade or downgrade one of the packages. However, these answers have aged as newer versions came out in the meantime. Is there a general recipe to identify the issue when interactive plotting fails?
## Versions
```
Python: 3.12.3
ipympl version: 0.9.4
IPython : 8.25.0
ipykernel : 6.29.4
ipywidgets : 8.1.3
jupyter_client : 8.6.2
jupyter_core : 5.7.2
jupyter_server : 2.14.1
jupyterlab : 4.2.1
nbclient : 0.10.0
nbconvert : 7.16.4
nbformat : 5.10.4
notebook : 7.2.0
qtconsole : 5.5.2
traitlets : 5.14.3
```
```
jupyter labextension list
JupyterLab v4.2.1
/home/bene/local/venvs/debug/share/jupyter/labextensions
jupyterlab_pygments v0.3.0 enabled OK (python, jupyterlab_pygments)
jupyter-matplotlib v0.11.4 enabled OK
@jupyter-widgets/jupyterlab-manager v5.0.11 enabled OK (python, jupyterlab_widgets)
@jupyter-notebook/lab-extension v7.2.0 enabled OK
```
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the blank figure using the listed virtual-environment commands and the ipympl basic example. Start by checking the reported Python, JupyterLab, notebook, ipympl, and widget versions and their compatibility. Done means identifying the cause and documenting a reliable diagnostic or package-version fix for interactive figures.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- jupyter, jupyter-notebook, python
- Domain
- data-visualization, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100