时间序列流在散景中

Max*_*axi 15 python bokeh

我想在散景中绘制一个实时时间序列.我想在每次更新时仅绘制新数据点.我怎样才能做到这一点 ?

散景网站上有动画图的例子,但它每次都会重新绘制整个图片.此外,我正在寻找一个简单的例子,我可以逐点做一个时间序列的现场情节.

big*_*dot 12

截至Bokeh 0.11.1,现在有一个流式接口,用于Bokeh服务器应用程序中的列数据源.您可以在此处查看并轻松运行示例:

https://github.com/bokeh/bokeh/tree/master/examples/app/ohlc

该示例显示了具有MACD指标(基于合成蜱数据)的实时更新OHLC图表,该指标仅在每次更新时使用最新数据点更新图表.

基本上,使用流媒体接口由两部分组成.首先创建一个dict与列数据源具有相同"形状" 的新元素:

new_data = dict(
    time=[t],
    open=[open],
    high=[high],
    low=[low],
    close=[close],
    average=[average],
    color=[color],
)
Run Code Online (Sandbox Code Playgroud)

然后将此传递给.stream方法,并带有一个可选rollover参数,该参数指定在浏览器中保留多大的缓冲区(早期数据开始被删除):

source.stream(new_data, 300)
Run Code Online (Sandbox Code Playgroud)

然后,只需将少量数据new_data发送到情节,而不是一切.