如何使用简单的 Slider 从 add_period_callback() 更改 "periodic_milliseconds" 属性?
How can I change the "periodic_milliseconds" attribute from add_period_callback() with a simple Slider?
希望有人能帮我解答这个问题。我有一个简单的 Slider
SampleRate_Slider = Slider(start=10, end=5000, value=500, step=50, title="Sample rate")
我想用滑块更改 add_periodic_callback 函数的 periodic_milliseconds 属性,
curdoc().add_periodic_callback(update, SampleRate_Slider.value)
更新函数修改了我的示例数据:
def update():
if Start_Stop.active:
if len(source.data['time']) == 0:
x = 0
else:
x = source.data['time'][-1] + 1
new_data = dict(time=[x], y=[sin(0.1 * source.data['time'][-7])])
# print("new_data", new_data)
source.stream(new_data, rollover=200)
else:
pass
但是当我运行我的代码时,属性的值似乎没有随着滑块的变化而改变(滑块值没有更新?)但是我怎样才能改变这个值?
亲切的问候
您必须取消并重新安排回调。 add_periodic_callback
returns 一个可以传递给 remove_periodic_callback
的对象,然后只需用新值调用 add_periodic_callback
。
希望有人能帮我解答这个问题。我有一个简单的 Slider
SampleRate_Slider = Slider(start=10, end=5000, value=500, step=50, title="Sample rate")
我想用滑块更改 add_periodic_callback 函数的 periodic_milliseconds 属性,
curdoc().add_periodic_callback(update, SampleRate_Slider.value)
更新函数修改了我的示例数据:
def update():
if Start_Stop.active:
if len(source.data['time']) == 0:
x = 0
else:
x = source.data['time'][-1] + 1
new_data = dict(time=[x], y=[sin(0.1 * source.data['time'][-7])])
# print("new_data", new_data)
source.stream(new_data, rollover=200)
else:
pass
但是当我运行我的代码时,属性的值似乎没有随着滑块的变化而改变(滑块值没有更新?)但是我怎样才能改变这个值?
亲切的问候
您必须取消并重新安排回调。 add_periodic_callback
returns 一个可以传递给 remove_periodic_callback
的对象,然后只需用新值调用 add_periodic_callback
。