bokeh服务器将无法使用简单的dateslider

时间:2019-02-24 23:23:35

标签: python server bokeh

以下代码应定义一个由单个dateslider组成的bokeh应用。如果将其另存为html(new_Vs = V.get(obs) + 0.7*(reward + 0.5*V.get(new_obs) - V.get(obs))),它将按预期工作,但bokeh服务器返回空白页。有任何线索吗?

serve=False

其他问题:

  1. 格式字符串是否确定更改滑块时更改的最低单位? (例如,如果我显示秒,则为秒;如果我显示月,则为月)
  2. 在这种情况下,step会做什么?我选择什么值似乎没有什么区别,行为是相同的,只是平滑地滑动。
  3. 为什么要求步骤是不可或缺的?我期待在这里输入s = datetime.strptime('2019-01-01 14:00:00', '%Y-%m-%d %H:%M:%S') e = datetime.strptime('2019-01-01 15:00:00', '%Y-%m-%d %H:%M:%S') v = datetime.strptime('2019-01-01 14:01:00', '%Y-%m-%d %H:%M:%S') st = timedelta(seconds=7) slider = DateSlider(start=s, step=2, end=e, value=e, format='%Y-%m-%d %H:%M') mylayout = column(children=[slider]) if serve: curdoc().add_root(mylayout) else: fname = os.path.join(...) output_file(fname) save(mylayout)

1 个答案:

答案 0 :(得分:0)

Bokeh图片中的所有日期时间值通常以毫秒为单位,例如datetime轴值是自纪元以来的毫秒数。在这种情况下,间隔是相同的,例如这是5分钟的增量:

userInput = input("Enter a line of text: ")
vowels = "aeiouAEIOU"
for i, char in enumerate(userInput):
    if char in vowels:
        print(char, i)

from bokeh.models import DateSlider from bokeh.io import curdoc from bokeh.layouts import column from datetime import datetime, timedelta s = datetime.strptime('2019-01-01 14:00:00', '%Y-%m-%d %H:%M:%S') e = datetime.strptime('2019-01-01 15:00:00', '%Y-%m-%d %H:%M:%S') v = datetime.strptime('2019-01-01 14:01:00', '%Y-%m-%d %H:%M:%S') st = timedelta(seconds=7) slider = DateSlider(start=s, step=1000*60*5, end=e, value=e, format='%Y-%m-%d %H:%M') mylayout = column(children=[slider]) curdoc().add_root(mylayout) 接受step似乎很合理。散景是一个巨大的项目,许多便利都无法实现,这仅仅是因为以前没有人指出过。这对于在GitHub上创建一个很好的问题,特别是如果您有兴趣帮助贡献的话。