Python Bokeh:ColumnDataSource中的滑块回调未升级

2024-06-16 16:59:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个关于回调的问题,我得到了所有的工作,除了部分,当图形不更新,即使你数组更新时,我改变滑块。在

import numpy as np

from bokeh.io import curdoc
from bokeh.layouts import row, widgetbox
from bokeh.models import ColumnDataSource, Slider
from bokeh.plotting import figure

data = {'x_values': [0,0,2,2,4,4],
        'y_values': [10,0,0,5,5,10]} #Seting up data

source = ColumnDataSource(data=data) # Map plot

plot = figure(title="Step Well",
              tools="save,wheel_zoom")

plot.line('x_values', 'y_values',source=source)

def update_data(attrname, old, new):
    Step = StepHeight.value

    x = [0,0,2,2,4,4]
    y = [10,0,0,Step,Step,10]
    source.data = ColumnDataSource(dict(x=x, y=y))
    source.on_change('value', update_data)

StepHeight = Slider(title="Step Height", 
                    value=4.0, 
                    start=2.0, end=6.0, step=0.2)
# Set up layouts and add to document
inputs = widgetbox(StepHeight)

layout = row(inputs, plot)

curdoc().title = "Sliders"
curdoc().add_root(layout)

Tags: fromimportsourcedataplottitlevaluestep
1条回答
网友
1楼 · 发布于 2024-06-16 16:59:26

你想让源数据列数据源,但源应为列数据源。源数据只是一本字典。我在你的代码中做了一些修改,现在应该可以正常工作了。在

import numpy as np
from bokeh.io import curdoc
from bokeh.layouts import row, widgetbox
from bokeh.models import ColumnDataSource, Slider
from bokeh.plotting import figure

data = {'x_values': [0,0,2,2,4,4],
        'y_values': [10,0,0,5,5,10]} #Seting up data

source = ColumnDataSource(data=data) # Map plot

plot = figure(title="Step Well",
              tools="save,wheel_zoom")

plot.line('x_values', 'y_values',source=source)

def update_data(attrname, old, new):
    y = [10,0,0,new,new,10]
    source.data['y_values'] = y

StepHeight = Slider(title="Step Height", 
                    value=4.0, 
                    start=2.0, end=6.0, step=0.2)

StepHeight.on_change('value', update_data)

# Set up layouts and add to document
inputs = widgetbox(StepHeight)

layout = row(inputs, plot)

curdoc().title = "Sliders"
curdoc().add_root(layout)

相关问题 更多 >