2

データが入ってきたら、ipython経由でmatplotlibを使用してプロットしたいだけです.-pylabオプションを使用してipythonを開いています。以下のコードでは、time.sleep(1) は、実験でデータを収集するのにかかる時間のプレースホルダーとして機能します。このコードは、以前にプロットされたデータを正常にクリアし、新しいデータセットで Figure を更新します。しかし、図を画面上で移動しようとすると、図がフリーズし、コードの実行時に更新されません (図のヘッダーに「応答していません」というキャプションが表示されます)。実験の進行状況を追跡する複数のプロットが最終的に存在するため、フィギュアの可動性が欲しいです。すべてがフリーズすることなく、それらを切り替えるオプションが欲しいです。助言がありますか?Windows 7ボックスでpython 2.6を実行しています。

import numpy as np
import matplotlib.pyplot as plt
import time
plt.ion()
fig = plt.figure(1)
ax = fig.add_subplot(111)
for k in range(100):
    plt.cla()
    time.sleep(1)
    ax = fig.add_subplot(111)
    ax.semilogy(np.random.rand(100))
    fig.canvas.draw()
    plt.draw()
4

0 に答える 0