我正在将Bokeh运行到Jupyter笔记本中:
from bokeh.io import output_notebook, show
from bokeh.plotting import figure
output_notebook()
由于回调函数
,我有一个图表运行的例子import numpy as np
from numpy import pi
from bokeh.client import push_session
from bokeh.driving import cosine
from bokeh.plotting import figure, curdoc
from bokeh.models import CustomJS, ColumnDataSource, Slider
x = np.linspace(0, 4*pi, 80)
y = np.sin(x)
p = figure()
r1 = p.line([0, 4*pi], [-1, 1], color="firebrick")
r2 = p.line(x, y, color="navy", line_width=4)
session = push_session(curdoc())
@cosine(w=0.03)
def update(step):
r2.data_source.data["y"] = y * step
r2.glyph.line_alpha = 1 - 0.8 * abs(step)
curdoc().add_periodic_callback(update, 50)
session.show(p)
session.loop_until_closed()
我的问题是我想仅在用户需要时运行/更新此图 (通过按钮或customJS,如果它的工作原理并不重要!)
我没有找到任何选择。有人知道Bokeh是否有可能吗? 谢谢!