温馨提示×

在Bokeh中如何创建和使用滑动条来改变图表数据

小樊
90
2024-05-20 10:59:36
栏目: 编程语言

要在Bokeh中创建和使用滑动条来改变图表数据,可以使用Bokeh库中的Slider组件。下面是一个简单的示例代码,演示了如何创建一个带有滑动条的图表,并根据滑动条的值来更新图表数据:

from bokeh.plotting import figure, curdoc
from bokeh.models import Slider, ColumnDataSource
from bokeh.layouts import column

# 创建一个图表和数据源
source = ColumnDataSource(data=dict(x=[], y=[]))
plot = figure(plot_width=400, plot_height=400)
plot.line('x', 'y', source=source)

# 创建一个滑动条
slider = Slider(start=0, end=10, value=5, step=1, title="Slider")

# 定义一个回调函数,当滑动条的值改变时更新数据源
def update_data(attrname, old, new):
    data = dict(x=list(range(new)), y=[i**2 for i in range(new)])
    source.data = data

slider.on_change('value', update_data)

# 将图表和滑动条组合成一个布局
layout = column(slider, plot)

# 将布局添加到当前文档中
curdoc().add_root(layout)

在这个示例中,我们创建了一个简单的图表,显示y=x^2的曲线。然后我们创建了一个范围在0到10之间的滑动条,用来控制x的取值范围。当滑动条的值改变时,通过回调函数update_data更新数据源的值,从而更新图表数据。最后,我们将滑动条和图表组合成一个布局,并将其添加到当前的Bokeh文档中。当你运行这段代码时,你将看到一个带有滑动条的图表,你可以通过滑动条来改变曲线的显示范围。

0