matplotlib / matplotlib/ipympl
Plot disappears after executing cell second time
- Dominant language
- Jupyter Notebook
- Stars
- 1.7k
- Forks
- 234
- PR merge metrics
- No merged PRs in 30d
Description
If I have a plot in a notebook cell, and execute it twice, the plot output disappears. This is not what is expected. For example, using this code in one jupyter notebook cell:
```
%matplotlib widget
import matplotlib.pyplot as plt
```
and this in another cell:
```
x = [0, 1, 2, 3]
y = [0, 1, 2, 3]
plt.plot(x, y)
```
The first time I run this, everything plots fine. But when I execute the second cell twice (or any following calls), the plot disappears. The expected behaviour is that it re-plots (using a different colour). If I then re-run the first cell (with `%matplotlib widget`), and then the second cell again, it works (but this basically just resets the plot).
If I include a plot command in the first cell, then I can re-run the second cell as many times as I want and it works as expected.
This does not happen if I use `%matplotlib inline`. I've tested in both jupyter lab and jupyter notebook. My versions are the following:
```
matplotlib 2.2.2 py36_1 conda-forge
ipympl 0.2.1 py36_0 conda-forge
@jupyter-widgets/jupyterlab-manager
@jupyter-widgets/jupyterlab-manager v0.35.0 enabled OK
```
Contributor guide
Research direction
Start by reproducing the two notebook-cell examples in JupyterLab and Jupyter Notebook with the reported widget and inline backends. Compare repeated execution of the plotting cell and confirm that the widget-backed plot remains visible and re-renders as expected without rerunning the backend-selection cell.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- jupyter-notebook, matplotlib, python
- Domain
- data-visualization
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100