bokeh - 动态改变 Bokeh AjaxDataSource polling_interval
问题描述
有没有办法改变 AjaxDataSource 的轮询间隔?
假设以下是数据源:
source = AjaxDataSource(data_url=f"{data_url}", polling_interval=30000, mode='append', adapter=adapter, name='ajax_data_source')
以下是适配器(为简洁起见,我删除了对数据进行的操作)
adapter = CustomJS(args=dict(first_plot=first_plot, first_plot_x_range=first_plot.x_range, first_plot_y_range=first_plot.y_range, source_column_names=source_column_names, ),
code="""
let pts = cb_data.response.plot_data
return pts
"""
在将数据返回到数据源之前,我想在适配器内部调整轮询间隔。我可以使用以下代码行来获取数据源的句柄并查看其属性。此外,我可以更改数据 url,以便我可以修改它以通知服务器我在屏幕上的最后一个数据点。但是,当我尝试更改轮询间隔时,即使属性显示更新的值,它也会被忽略。
因此,以下工作:
let data_source = Bokeh.documents[0].get_model_by_name(`ajax_data_source`)
data_source.data_url = 'some new url'
但是,以下不
let data_source = Bokeh.documents[0].get_model_by_name(`ajax_data_source`)
data_source.polling_interval = 1000
console.log(data_source.polling_interval) // this returns 1000 as expected
数据源继续以旧频率更新
我无法提供完整的工作示例,因为它已嵌入到 Django 项目中
解决方案
推荐阅读
- stripe-payments - 在平台账户和关联账户的条带结账之间切换(将卡保存在平台账户上)
- c++ - 为什么此代码有效(具有无效非模板函数的 C++ 模板类)?
- sql - 如何获取每个月的第一行数据(postgres)
- string - IE11 的 ES5 SHA-1 哈希
- azure-devops - Azure devOps wiki:创建表 microsoft docs 样式
- python - 如何在python中从音频文件中去除噪音
- sublimetext3 - Sublime Text 3 中包控制的 OpenSSL / libcrypto.dylib 问题
- javascript - Javascript 使用子字符串根据多个 If 语句将用户输入拆分为两个文本区域,它只考虑一个 if 语句
- redirect - 重定向到移动版网站的简单方法?
- python - MacOS BigSur 和 OpenGL.error.NullFunctionError 上的 PyOpenGL