如何在python散景中创建滑块播放按钮

时间:2018-01-23 08:38:42

标签: python graph slider bokeh

我已经有here的滑块代码,它只是静态的,必须手动滑动,但是我想要一些带有播放按钮的东西,可以通过点击它来播放

以下是我尝试使用播放和暂停按钮的操作,here是我获取此代码的来源

def animate_update():
    year = slider.value + 1
    if year > years[-1]:
        year = years[0]
    slider.value = year


def slider_update(attrname, old, new):
    year = slider.value
    label.text = str(year)
    source.data = data[year]

slider = Slider(start=years[0], end=years[-1], value=years[0], step=1, title="Year")
slider.on_change('value', slider_update)


def animate():
    if button.label == '► Play':
        button.label = '❚❚ Pause'
        curdoc().add_periodic_callback(animate_update, 200)
    else:
        button.label = '► Play'
        curdoc().remove_periodic_callback(animate_update)

button = Button(label='► Play', width=60)
button.on_click(animate)

但是当使用它时它会给我错误

NameError                                 Traceback (most recent call last)
<ipython-input-15-f62f961b8000> in <module>()
     32         curdoc().remove_periodic_callback(animate_update)
     33 
---> 34 button = Button(label='► Play', width=60)
     35 button.on_click(animate)

NameError: name 'Button' is not defined

P.S - 我正在使用jupyter笔记本。

我做错了什么。

非常感谢任何帮助。

由于

DOMNICK

1 个答案:

答案 0 :(得分:1)

以下是带有本地Bokeh服务器的滑块的播放按钮示例(通过结合这两个链接:herehere)。

之前,您需要安装bokeh

然后,您编写并运行此脚本:

service

然后,编写一个导航器:      http://localhost:5000/