matplotlib / matplotlib/ipympl
ipympl crashes when panning/zooming
Personne n'a encore pris cette issue.
- Langage dominant
- Jupyter Notebook
- Étoiles
- 1.7k
- Forks
- 234
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
## Describe the issue
After a plot gets displayed in a notebook, I select either the zoom or pan button, move the cursor over the plot, and drag it to execute the operation. The plot correctly responds for a little while, but soon the server crashes with this error:
```
[E 16:08:31.532 NotebookApp] Uncaught exception, closing connection.
Traceback (most recent call last):
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/site-packages/tornado/iostream.py", line 702, in _handle_events
self._handle_write()
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/site-packages/tornado/iostream.py", line 976, in _handle_write
self._write_buffer.advance(num_bytes)
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/site-packages/tornado/iostream.py", line 182, in advance
assert 0 < size <= self._size
AssertionError
Exception in callback None()
handle:
Traceback (most recent call last):
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/asyncio/events.py", line 80, in _run
self._context.run(self._callback, *self._args)
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/site-packages/tornado/platform/asyncio.py", line 206, in _handle_events
handler_func(fileobj, events)
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/site-packages/tornado/iostream.py", line 702, in _handle_events
self._handle_write()
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/site-packages/tornado/iostream.py", line 976, in _handle_write
self._write_buffer.advance(num_bytes)
File "/Users/busko/Projects/software/miniconda3/envs/astro/lib/python3.10/site-packages/tornado/iostream.py", line 182, in advance
assert 0 < size <= self._size
AssertionError
[W 16:08:31.533 NotebookApp] zmq message arrived on closed channel
```
## Versions
I suppose I'm using the latest versions of everything (under Python 3.10.9), sinceI just installed everything from scratch on a new Mac M1 (which has the developer tools and rosetta).
```
bash-3.2$ python -c "import sys; print('\n',sys.version); import ipympl; print('ipympl version:', ipympl.__version__)" && jupyter --version && jupyter nbextension list && jupyter labextension list
3.10.9 (main, Jan 11 2023, 09:18:20) [Clang 14.0.6 ]
ipympl version: 0.9.3
Selected Jupyter core packages...
IPython : 8.14.0
ipykernel : 6.24.0
ipywidgets : 8.0.7
jupyter_client : 8.3.0
jupyter_core : 5.3.1
jupyter_server : 2.7.0
jupyterlab : not installed
nbclient : 0.8.0
nbconvert : 7.7.1
nbformat : 5.9.1
notebook : 6.5.4
qtconsole : 5.4.3
traitlets : 5.9.0
Known nbextensions:
config dir: /Users/busko/Projects/software/miniconda3/envs/astro/etc/jupyter/nbconfig
notebook section
jupyter-matplotlib/extension enabled
- Validating: OK
jupyter-js-widgets/extension enabled
- Validating: OK
usage: jupyter [-h] [--version] [--config-dir] [--data-dir] [--runtime-dir] [--paths] [--json] [--debug] [subcommand]
Jupyter: Interactive Computing
positional arguments:
subcommand the subcommand to launch
options:
-h, --help show this help message and exit
--version show the versions of core jupyter packages and exit
--config-dir show Jupyter config dir
--data-dir show Jupyter data dir
--runtime-dir show Jupyter runtime dir
--paths show all Jupyter paths. Add --json for machine-readable format.
--json output paths as machine-readable json
--debug output debug information about paths
Available subcommands: bundlerextension console dejavu events execute kernel kernelspec migrate nbclassic nbconvert nbextension
notebook qtconsole run server serverextension troubleshoot trust
Jupyter command `jupyter-labextension` not found.
```
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Reproduisez le crash dans un notebook en affichant un graphique et en faisant glisser avec le contrôle de zoom ou de panoramique, en utilisant la configuration signalée avec Python 3.10.9 et ipympl 0.9.3. Commencez par l’assertion de Tornado et les versions des paquets Jupyter indiquées ; c’est terminé lorsque le panoramique et le zoom peuvent continuer sans que le serveur ou la connexion ne plante.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- jupyter, jupyter-notebook, matplotlib, python
- Domaine
- data-visualization
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 35/100