You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否将普通DataSource直接附加到Bokeh的Document上?

解决方案
  • 服务端直接将数据源作为独立根对象加入Bokeh文档即可,无需绑定任何glyph渲染组件,示例代码如下:
from bokeh.models import ColumnDataSource
from bokeh.io import curdoc

# 初始化仅存储ids的空数据源,指定name用于前端索引
id_storage = ColumnDataSource(data={"ids": []}, name="idStorage")
# 直接添加到文档根集合,不需要关联任何可视化组件
curdoc().add_root(id_storage)

# 后续Python侧可随时读取数据源内容,获取前端传入的id列表
def fetch_ids():
    return id_storage.data["ids"]
  • 前端调用逻辑和你之前获取关联glyph的数据源完全一致:
let idSource = Bokeh.documents[0].get_model_by_name('idStorage');
// 新增id操作
idSource.data.ids.push('目标id值');
// 提交变更同步到Python后端
idSource.change.emit();
  • 补充说明:Bokeh的文档根集合支持添加任意继承自Model的Bokeh对象,不限制仅能添加可视化渲染类组件,多个根对象可并行同步互不影响,你添加的独立数据源不会产生额外的渲染开销。

内容的提问来源于stack exchange,提问作者Eduardo Rios

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 01:06:03