是否可以在Jupyter Notebook中运行Bokeh Widget Python回调



我正在jupyter笔记本中工作。是否可以从散景小部件运行Python回调?

是的,您可以通过定义修改散景文档的函数来嵌入jupyter笔记本中的散布服务器应用,然后将其传递给show,例如:

def modify_doc(doc):
    df = sea_surface_temperature.copy()
    source = ColumnDataSource(data=df)
    plot = figure(x_axis_type='datetime', y_range=(0, 25),
                  y_axis_label='Temperature (Celsius)',
                  title="Sea Surface Temperature at 43.18, -70.43")
    plot.line('time', 'temperature', source=source)
    def callback(attr, old, new):
        if new == 0:
            data = df
        else:
            data = df.rolling('{0}D'.format(new)).mean()
        source.data = ColumnDataSource(data=data).data
    slider = Slider(start=0, end=30, value=0, step=1, title="Smoothing by N Days")
    slider.on_change('value', callback)
    doc.add_root(column(slider, plot))

您可以在此处看到一个完整的示例:

https://github.com/bokeh/bokeh/bokeh/blob/master/examples/howto/server_embed/notebook_embed.ipynb

(您需要本地运行笔记本(

最新更新