0

次のコードを使用して、プロットを 10 秒ごとに更新しようとしています。

@sched.interval_schedule(seconds = 10)
def update_line():

    c = 0
    while c <= 9:
        y[c] = y[c] + 1
        c = c+1

    x = range(1, 11)
    plt.ion()
    fig = plt.figure(1)

    ax = fig.add_subplot(111)
    plt.plot(x, y)

y データの最初のセットのグラフのみをプロットしています。その後、次のエラーが表示されます。 -02-06 16:00:42.942079)" スキップ: 実行中のインスタンスの最大数に達しました (1)"

代わりに何らかの方法で draw() を使用する必要がありますか?

ありがとう

4

2 に答える 2

0

plt.ion()まず、 i)インタラクティブ機能がオン、オン、ii)毎回新しいフィギュアが必要ない場合は、プロット自体を更新する関数/ループの外部で、フィギュアの呼び出しと作成を行う必要があります。

この質問と回答を見てください。似たようなことを成し遂げたいと思います

于 2013-02-06T16:21:49.780 に答える
0

まず、サブプロットを現在の軸として設定する必要がある一方で、サブプロットを追加し続けることです。出力ストリームを現在のサブプロットに設定するには、次を使用します。

plt.figure(1)
plt.subplot(111)

サブプロットが 1 つしかない場合 (111)、後者は必要ありません。子を座標軸 (サブプロット) に追加するか変更しても、Figure は自動的に再描画されません。行を追加

fig.canvas.draw()
于 2013-02-06T16:49:56.500 に答える