[解決済み] IPython notebookのループでプロットを動的に更新する方法(1セル内)
質問
環境 Python 2.7です。
Matplotlib
1.3、IPython notebook 1.1、Linux、Chrome。コードは1つの入力セルに
--pylab=inline
.
IPython notebookとPandasを使って、ストリームを消費し、5秒ごとに動的にプロットを更新したいです。
私がテキスト形式でデータを印刷するためにprintステートメントを使用するとき、それは完全にうまくいきます:出力セルはただデータを印刷し、新しい行を追加し続けます。しかし、データをプロットしようとすると (そしてループで更新すると)、プロットは出力セルに決して表示されません。しかし、私がループを削除し、一度だけそれをプロットするならば、それはうまく機能します。
それから私はいくつかの簡単なテストを行いました。
i = pd.date_range('2013-1-1',periods=100,freq='s')
while True:
plot(pd.Series(data=np.random.randn(100), index=i))
#pd.Series(data=np.random.randn(100), index=i).plot() also tried this one
time.sleep(5)
手動で処理を中断するまで、出力は何も表示されません (
Ctrl
+
M
+
I
). そして、私がそれを中断した後、プロットは複数の重なった線として正しく表示されます。しかし、私が本当に欲しいのは、5秒ごとに (または、"co" と "co" の組み合わせで) 表示され、更新されるプロットです。
plot()
関数が呼び出されるたびに、ちょうど私が上で述べたprint文の出力のように、うまく機能します)。セルが完全に終了した後に最終的なグラフを表示するだけでは
ではなく
であり、私が望むものではありません。
の後に明示的にdraw()関数を追加してみました。
plot()
などと書いてみました。どれもうまくいきません。どのようにすれば、プロットを動的に
に対して
/
の間
ループは、IPythonのノートブックで1つのセル内に?
どのように解決するのですか?
を使用します。
IPython.display
モジュールを使用します。
%matplotlib inline
import time
import pylab as pl
from IPython import display
for i in range(10):
pl.plot(pl.randn(100))
display.clear_output(wait=True)
display.display(pl.gcf())
time.sleep(1.0)
関連
-
[解決済み】ipython notebookのコードでセル出力をクリアする
-
[解決済み] ブラウザでJupyter/ipythonノートブックのセル幅を広げるにはどうすればよいですか?
-
[解決済み] IPythonノートブックmatplotlibプロットをインラインで行う方法
-
[解決済み】IPython NotebookでLaTeXを記述する方法は?
-
[解決済み] Pythonのマルチプロセッシングプールimap_unorderedの呼び出しの進捗を表示しますか?
-
[解決済み] タプルのリストを複数のリストに変換するには?
-
[解決済み] オブジェクトのリストに特定の属性値を持つオブジェクトが含まれているかどうかをチェックする
-
[解決済み] Pythonの文字列書式をリストで使う
-
[解決済み] djangoのQueryDictをPythonのDictに変更するには?
-
[解決済み] Jupyter/iPythonでプロットを動的に更新するために現在正しい方法は何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】matplotlibを使ってwhileループでリアルタイムにプロットするにはどうしたらいいですか?
-
[解決済み] 値で列挙名を取得する [重複]。
-
[解決済み] Django 1.7で初期マイグレーションからマイグレートバックする方法は?
-
[解決済み] PyMongoで.sortを使用する
-
[解決済み] 異なる順序で同じ要素を持つ2つのJSONオブジェクトを等しく比較するには?
-
[解決済み] pycharmがタブをスペースに自動変換する
-
[解決済み] Pythonの文字列書式をリストで使う
-
[解決済み] djangoのQueryDictをPythonのDictに変更するには?
-
[解決済み] Python の sorted() はどのようなアルゴリズムを使っているのですか?重複
-
[解決済み] Jupyter/iPythonでプロットを動的に更新するために現在正しい方法は何ですか?