我写了下面的小脚本,我只想绘制一条交互式正弦曲线,我可以改变曲线的幅度和图的标题。但是,作为输出,我将图形与滑块和文本字段一起使用,但更改值不会更改曲线或标题。
import numpy as np
from bokeh.io import push_notebook
import pandas as pd
from ipywidgets import interact
from bokeh.layouts import widgetbox
from bokeh.io import push_notebook
x = np.linspace(0,2*np.pi,2000)
y = np.sin(x)
df_data = pd.DataFrame({'x':x,'y':y})
p = figure(plot_height=300,plot_width=600,title="my sine wave")
p.line('x','y',source=df_data)
# Set up widges
amplitude = Slider(title="amlitude", value=0.0, start=0.01, end=0.99, step=0.01)
text = TextInput(title="title", value='my sine wave')
# Update
def update_data(attrname, old, new):
# Get the current slider values
a = amplitude.value
b = text.value
y = amplitude*np.sin(x)
output_notebook()
show(row(p,widgetbox([amplitude,text])))
text.on_change('value', update_data)
amplitude.on_change('value',update_data)
# Set to output the plot in the notebook
output_notebook()
show(row(p,widgetbox([amplitude,text])))
正如你所看到的,一切正常,而不是更新情节。
答案 0 :(得分:0)
一切正常,而不是更新情节。
在update_data
范围内,您必须再次show()
,因为在您的底线或它不会刷新。