No heatmap shown with `seaborn` and `%matplotlib widget`
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 42/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- jupyter-notebook, matplotlib, pandas, python
- Domain
- data-visualization, frontend, tooling
Research direction
Start by reproducing the supplied seaborn heatmap and plain matplotlib plot in JupyterLab with %matplotlib widget, then compare them with %matplotlib inline. Inspect the ipympl and Jupyter widget integration used by this setup and verify the listed package versions. Done means the seaborn heatmap renders interactively with the widget backend.
Written by the indexing model from the issue text.
Description
Describe the issue
Thank you very much for providing this tool!
I have an apparently seaborn-related problem with showing widgets; I am posting this here first. Please let me know if you think this problem is rather on seaborn's end and I'll repost it there.
The problem: seaborn figures are not shown in JupyterLab with %matplotlib widget (they do show up with %matplotlib inline):
%matplotlib widget
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
df = pd.DataFrame([[10, 20, 30, 40], [50, 30, 8, 15],
[25, 14, 41, 8], [7, 14, 21, 28]])
sns.heatmap(df, cmap='RdYlGn', linewidths=0.30, annot=True)

%matplotlib inline
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
df = pd.DataFrame([[10, 20, 30, 40], [50, 30, 8, 15],
[25, 14, 41, 8], [7, 14, 21, 28]])
sns.heatmap(df, cmap='RdYlGn', linewidths=0.30, annot=True)

No problem with matplotlib:
%matplotlib widget
import matplotlib.pyplot as plt
plt.plot([[1, 2], [0, 0]])

Versions
ipympl version: 0.8.2
Selected Jupyter core packages...
IPython : 7.29.0
ipykernel : 6.4.2
ipywidgets : 7.6.5
jupyter_client : 7.0.6
jupyter_core : 4.9.1
jupyter_server : 1.11.2
jupyterlab : 3.2.2
nbclient : 0.5.5
nbconvert : 6.2.0
nbformat : 5.1.3
notebook : 6.4.5
qtconsole : not installed
traitlets : 5.1.1
Known nbextensions:
config dir: /home/dominique/.jupyter/nbconfig
notebook section
nbextensions_configurator/config_menu/main enabled
- Validating: problems found:
- require? X nbextensions_configurator/config_menu/main
contrib_nbextensions_help_item/main enabled
- Validating: OK
spellchecker/main enabled
- Validating: OK
gist_it/main enabled
- Validating: OK
tree section
nbextensions_configurator/tree_tab/main enabled
- Validating: problems found:
- require? X nbextensions_configurator/tree_tab/main
config dir: /home/dominique/.local/miniconda/envs/test/etc/jupyter/nbconfig
notebook section
jupyter-matplotlib/extension enabled
- Validating: OK
jupyter-js-widgets/extension enabled
- Validating: OK
JupyterLab v3.2.2
/home/dominique/.local/miniconda/envs/test/share/jupyter/labextensions
jupyter-matplotlib v0.10.2 enabled OK
@jupyter-widgets/jupyterlab-manager v3.0.1 enabled OK (python, jupyterlab_widgets)
Installed from conda-forge
mamba create -n test matplotlib pandas seaborn jupyterlab ipympl -y -c conda-forge
More versions:
# Name Version Build Channel
matplotlib 3.4.3 py39hf3d152e_1 conda-forge
matplotlib-base 3.4.3 py39h2fa2bec_1 conda-forge
matplotlib-inline 0.1.3 pyhd8ed1ab_0 conda-forge
pandas 1.3.4 py39hde0f152_1 conda-forge
seaborn 0.11.2 hd8ed1ab_0 conda-forge
seaborn-base 0.11.2 pyhd8ed1ab_0 conda-forge
Do you have an idea why this is happening?
- Dominant language
- Jupyter Notebook
- Stars
- 1.7k
- Forks
- 234
- PR merge metrics
- No merged PRs in 30d
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.
More from matplotlib/ipympl
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
matplotlib/ipympl#623 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
matplotlib/ipympl#622 · 13 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
matplotlib/ipympl#612 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
matplotlib/ipympl#611 · 4 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
matplotlib/ipympl#609 · 7 comments ·
All issues in matplotlib/ipympl
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
pydata/pydata-sphinx-theme#2503 ·
-
bug triage_needed
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
P3 size: 1 task
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
🦾 ai-candidate
Difficulty 2/5 1-3 hours Newbie friendliness 88/100