forループ中にスライダーの値を反映させたい
jupyternotebook上で、ループを使ってグラフを描画するときに途中で変数の値(下の例ではb)を変更したいのですができますか?
途中で値を変えたときにグラフがどのように変化するかをシミュレーションするプログラムを作成中です。
下記のようにスライダーを使って変更しようとしたら、forループが終了するまでbの値の変更が反映されません。
また、スライダーを動かした場合、ループ終了後にグラフが消えます。
import matplotlib
%matplotlib inline
import matplotlib.pyplot as plt
import time
from IPython.display import display, clear_output
from ipywidgets import interact
b=0
x=[]
y=[]
def f(a):
global b
b=a+1
print(b)
interact(f,a=(-10,10, 1))
fig = plt.figure()
axe = fig.add_subplot(111)
for i in range(10):
x.append(i)
y.append(i+b)
axe.plot(x,y)
display(fig)
time.sleep(1)
axe.cla()
clear_output(wait = True)
ご教示よろしくお願いします。