What prevents a figure showing before notebook cell completion?
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- jupyter, jupyter-notebook, python
調査の方向性
この issue ではソースファイルもテストも指定されていません。まず、%matplotlib widget バックエンドを使って単一セルと分割セルの例を再現し、次に Qt バックエンドでの fig.canvas.draw() の動作と比較してください。原因と適切なレンダリング動作が確立されれば完了です。
索引モデルが issue の本文から書いたものです。
説明
My issue boils down to:
"Why does the figure not show immediately, but instead waits until the cell has completed running?"
%matplotlib widget
import matplotlib.pyplot as plt
from time import sleep
fig = plt.figure()
plt.plot([1,2,3])
sleep(2)
This behaviour is preventing fun uses, like dynamic plotting in a single cell:
%matplotlib widget
from matplotlib import pyplot as plt
from time import sleep
import numpy as np
fig = plt.figure()
for i in range(10):
x, y = np.random.random(2)
plt.scatter(x, y)
fig.canvas.draw()
sleep(0.1)
The previous code works if one splits it into two cells, placing the figure() call in the first one:
# Cell 1
%matplotlib widget
from matplotlib import pyplot as plt
from time import sleep
import numpy as np
fig = plt.figure()
# Cell 2
for i in range(10):
x, y = np.random.random(2)
plt.scatter(x, y)
fig.canvas.draw()
sleep(0.1)
Edit: I also note that in the qt backend, there figure and plot are shown immediately, in contrast to the ipympl behaviour.
- 主要言語
- Jupyter Notebook
- スター
- 1.7k
- フォーク
- 234
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
matplotlib/ipympl のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
matplotlib/ipympl#623 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
matplotlib/ipympl#622 · コメント 13 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 42/100
matplotlib/ipympl#612 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
matplotlib/ipympl#611 · コメント 4 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 42/100
matplotlib/ipympl#609 · コメント 7 件 ·
matplotlib/ipympl の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
google/libultrahdr#485 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
gradio-app/gradio#13887 ·
-
internal
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
hemilabs/ui-monorepo#2344 ·