问题标签 [bokehjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 从 Bokeh 中的 NetworkX Graph 中获取选定的字形
我正在尝试从 Bokeh 中的 GraphRender 对象中使用框选择获取所选节点的索引,以创建链接的数据表。(我希望能够获取选定节点的索引)
这个问题有点类似于:JavaScript callback to get selected glyph index in Bokeh但是我无法使用他们提出的解决方案来解决它。
完整的代码如下,我尝试使用自定义 JS 回调来解决它,但我无法这样做。
任何帮助深表感谢。提前致谢!
(注意:这是我的第一个问题,如果需要更多信息,请告诉我。)
python-3.x - Bokeh 中的 CheckboxGroup 绘制加法图
我想使用一个复选框组来表示线性加法源。这个想法是让用户能够打开或关闭不同类型的多个源以显示具有附加值的图。
我实现了一个下拉版本,其中数据具有不同的组合作为数据框的列,因此代码的 CustomJS 部分如下:
我不太了解Javascript。有没有办法只给出一个数据框,如下所示:
并具有复选框组按钮,如果用户选择“A”和“C”,则该图将更改为 Wave 与 A+C 的图,反之亦然以删除选择。
我发现了一个类似的问题,但它只是显示/隐藏了图表并且不会更改数据:https ://stackoverflow.com/a/38706613/8565759
我在真实数据中有太多选择,无法手动分配组合。
javascript - 如何将外部 javascript 库导入 Bokeh 生成的 html
我想在我的 Bokeh javascript 回调中使用一个 javascript 库(特别是这个)。如何指定导入此 javascript 库,以便可以从 Bokeh 的 js 回调函数访问该库?
示例位于:
https://docs.bokeh.org/en/latest/docs/user_guide/extensions.html
主要讲创建自定义Bokeh Model。我对创建新模型不是特别感兴趣,只是想在回调中使用库函数来修改绘制的数据。
typescript - 如何实现像 image_rgba 那样使用源的自定义 bokehjs 扩展?
我正在为散景创建自定义扩展。一切正常,文档中的示例很有用。但是,我正在尝试镜像 image_rgba 的功能,即使用您可以执行的图像:
我查看了源代码以重新创建实现此功能的官方方法,但出现错误。让我用代码解释一下:
我的自定义模型定义:
并且计划是在源更改时使用 dataspec 构造:
但是当我从 python 端发送一个string
for时dx
,它会抱怨:
这显然是正确的,因为我说它将是 aNumberSpec
并且我发送了string
. 但是我该如何正确地做到这一点?
bokeh - 在独立散景图中通过回调 JS 更改 ColorMapper
我想创建一个独立的文档,类似于服务器应用程序示例“Crossfilter”:选择不同的列来为圆圈着色并更新颜色条。
我用下面的代码定义了一个 CustomJS,在这里我用计算的低值和高值创建了一个新的 LinearColorMapper。(出于调试目的,我有意添加了不同于通过 Python 代码设置的调色板)。
结果,在选择列时,圆圈变为白色,线条变为黑色,颜色条的刻度正确更改,但调色板没有更改。
你能帮我在回调中设置正确的属性吗?先感谢您。
原始状态,来自 Python 代码的颜色映射器集
选择列“d”后
我创建了一个“最小的工作示例”来展示我走了多远。带有模板的完整项目可以在这里找到:https ://github.com/pintergreg/bokehjscolormapperexample
python - Bokeh PATCH-DOC ping-pong 重置绘图
我们的仪表板有三个相对需要数据的图:
- 两个图像图(200x200x3)
- 自定义扩展工具图 (200x200x4)。
我们从 s '更新'(发送数据到)它们doc.add_next_tick_callback
。我们遇到了一个奇怪的情况,即image
绘图似乎工作了一秒钟,然后出现了一条 websocket 消息,该消息清除了缓冲区中的所有内容。
我们跟踪了前端和后端,似乎:
- 前端使用空缓冲区初始化(好)
- 前端发送带有空缓冲区的 PATCH-DOC
- 与此同时,实际数据更新从服务器到达(这使得图像工作瞬间)
- 最后,空的 PATCH-DOC 被 ping 回前端重置我们的数据。
我们广泛阅读了前端代码库,发现当我们删除
this.send(patch_message)
从connection.ts
第 166 行开始,我们的问题就消失了。
什么可能导致这种 ping/pong 行为?
这可能是一个错误还是我们做错了什么?
在 Bokeh 版本 1.0.4 上测试
python - Bokeh ResetTool 预期行为
ResetTool 的预期行为是什么?
除了将绘图画布重置为其原始大小之外,它是否还应该对小部件产生影响,例如复选框(即:假设在创建绘图时所有复选框都设置为活动状态,那么其中一些被取消选择,应该单击重置工具在工具栏中将它们重置为原始状态?)
reactjs - 如何在 React 中控制非 React 组件(BokehJS)?
背景故事我想在我的 React 组件中包含一个 BokehJS 绘图。这个过程是渲染<div id="my_plot_id" className="bk-root"/>
和调用window.Bokeh.embed.embed_item(plotData, 'my_plot_id')
将所需的 HTML 注入到 DOM 中。
因为我想使用 React 组件的状态来控制 BokehJS 绘图(即用新生成的绘图数据替换绘图) ,所以我不想只调用embed_item()
. componentDidMount()
相反,我在此调用之前放入embed_item()
并render()
添加了一些代码以删除容器 div 的子节点。
问题
我的 React 组件在页面加载时渲染了 3 次,尽管在最终渲染时我只显示了一个图,但有一个短暂的时刻(我认为在第二次和第三次/最终渲染之间)我看到了两个图。
代码
在控制台中我看到:
空
0
2
问题
所以它似乎在正确检测到孩子embed_item
之前执行了两次。my_plot_id
为什么会发生这种情况,我该如何解决?虽然三重渲染可能没有进行性能优化,但我相信我的组件应该能够(在合理范围内)尽可能频繁地重新渲染,而不会出现这样的视觉故障,所以我没有将注意力集中在防止重新渲染的方法上渲染。
bokeh - Toogle 散景单选按钮组中的单个单选按钮(打开和关闭)
我正在使用带有单个标题的散景单个单选按钮。最初它是非活动的,当我点击单选按钮时它变为活动但如果我再次点击活动它不会变为非活动状态。
我需要如何实现这个功能?