要使用Bokeh創建帶有回調函數的交互式圖表,您需要使用Bokeh的基本圖表功能以及Bokeh的回調功能。
以下是一個簡單的示例,演示如何創建一個帶有滑塊的交互式圖表,并使用回調函數更新圖表:
from bokeh.plotting import figure, curdoc
from bokeh.layouts import column
from bokeh.models import Slider
from bokeh.io import output_file, show
# 創建一個圖表
plot = figure()
plot.line(x=[1, 2, 3, 4, 5], y=[1, 2, 3, 4, 5])
# 創建一個滑塊
slider = Slider(start=0, end=10, value=0, step=1, title="Offset")
# 定義一個回調函數
def update_plot(attr, old, new):
offset = slider.value
new_y = [y + offset for y in plot.y_range.factors]
plot.y_range.factors = new_y
# 將回調函數與滑塊連接
slider.on_change('value', update_plot)
# 創建一個布局
layout = column(slider, plot)
# 將布局添加到文檔中
curdoc().add_root(layout)
此示例創建了一個簡單的折線圖表和一個滑塊。當滑塊的值更改時,回調函數將更新圖表的y值并重新繪制圖表。您可以通過運行上面的代碼并在瀏覽器中查看交互式圖表來測試這個示例。