2016-08-25 12 views
5

リアルタイムプロット中にx軸を操作して、最大10個のサンプルが同時に表示されるようにします。 plt.axis()は、プロットが初期化された後に1回だけ更新されるようです。助言がありますか?前もって感謝します!リアルタイムプロット中にmatplotlibのx軸を移動する(python)

import numpy as np 
import matplotlib.pyplot as plt 

# Initialize 
x_axis_start = 0 
x_axis_end = 10 

plt.axis([x_axis_start, x_axis_end, 0, 1]) 
plt.ion() 

# Realtime plot 
for i in range(100): 
    y = np.random.random() 
    plt.scatter(i, y) 
    plt.pause(0.10) 
    # print(i) 

    if i%10 == 0 and i>1: 
     # print("Axis should update now!") 
     plt.axis([x_axis_start+10, x_axis_end+10, 0, 1]) 

答えて

1

あなたはif文でx_axist_startx_axis_endを更新する必要があります!

if i%10 == 0 and i>1: 
    print("Axis should update now!") 
    x_axis_start += 10 
    x_axis_end += 10 
    plt.axis([x_axis_start, x_axis_end, 0, 1]) 

これはトリックです! :)

説明:両方のパラメーターに10回だけ追加しました。最後には、常に10から0と10を追加して、更新を1つだけ残しました。

+0

ああ、それほど簡単です!どうもありがとうございます! – NumbThumb

+0

ようこそ。最小限の作業例btwでうまくいっていれば、それらが十分に見えません! – Ian

関連する問題