为什么散景秀(情节)不起作用?

时间:2016-11-29 10:59:21

标签: python-3.x graph widget interactive bokeh

我在Bokeh尝试自己。我发现它非常有趣,因为它似乎是D3js的一个很好的替代品。在第一次尝试中,我想创建一个带有小部件的小交互式圆形图表(用于更改标题和可能的字形颜色/大小)。这是我的工作:

# interactive widget bokeh figure
from bokeh.io import curdoc
from bokeh.layouts import row, widgetbox
from bokeh.models import ColumnDataSource
from bokeh.models.widgets import Slider, TextInput
from bokeh.plotting import figure
import numpy as np

        # data
x = [-4, 3, 2, 4, 10, 11, -2, 6]
y = [-3, 2, 2, 9, 11, 12, -5, 6]    


        # Set up plotting

x_top = np.max(x)+np.var(x)
x_bottom = np.min(x)-np.var(x)
y_top = np.max(y)+np.var(y)
y_bottom = np.min(y)-np.var(y)

p = figure(plot_height=400, plot_width=400, title="a little interactive chart",         
                tools="crosshair,pan,reset,save,wheel_zoom",
                x_range=[x_bottom, x_top], y_range=[y_bottom, y_top])

p.circle(x, y, fill_color="red", line_color="red", size=6)


        # Set up widgets
text = TextInput(title="title", value='a little interavtive chart')
size = Slider(title="circle size", value = 6, start=0, end=10, step=0.1)


        # Set up callbacks
def update_title(attrname, old, new):
    p.title.text = text.value

text.on_change('value', update_title)

# # Set up layouts and add to document
inputs = widgetbox(text, size)

curdoc().add_root(row(inputs, p, width=800))
curdoc().title = "Sliders"

show(p)

不知怎的,我得不到视觉效果 - 没有错误,但没有结果。我的意思是我错误地使用curdoc()。关于我为什么得到一架空机的想法?

1 个答案:

答案 0 :(得分:1)

如果您正在使用python回调和curdoc创建散景应用程序,那么您不必直接使用python解释器运行它们。您必须使用Bokeh服务器运行它们:

bokeh serve --show myapp.py