javascript - Bokeh CustomJS 回调以在滑块移动时更改 DataFrame 的行
问题描述
有时间试图弄清楚这一点:
有一个带有数据行的df。从 df 绘制几行,如下所示:
symchart.line(proj_dates, proj_i10, color = "purple", line_width = 2)
symchart.line(proj_dates, proj_ZL, color = "red", line_width = 1)
z0_renderer = symchart.line(proj_dates, proj_Z0, color = "navy", line_width = 1)
symchart.line(proj_dates, proj_ZL, color = "red", line_width = 1)
symchart.line(proj_dates, proj_i90, color = "purple", line_width = 2)
每一行的数据来自以下:
proj_i10 = interval_df.iloc[1,2:]
proj_ZL = interval_df.iloc[2,2:]
proj_Z0 = interval_df.iloc[3,2:]
proj_ZU = interval_df.iloc[4,2:]
proj_i90 = interval_df.iloc[5,2:]
proj_dates = interval_df.iloc[0,2:]
目标是移动滑块并让每个线图从 df 更改它使用的行。所以滑块值 = 1 保留了上面的图。对于滑块的每次移动,绘图每个移动 5 行,因此滑块值 = 2 然后每个线图在 df 中向下跳过 5 行并重绘绘图。滑块值停止在 31。
这是没有滑块的输出示例
数据的 df 示例
解决方案
无法更改DataFrame
自身,因为它是 Python 构造并CustomJS
在 JavaScript 中运行。但是仍然可以通过使用视图和过滤器并避免更改整个数据来实现您想要的行为。有一个关于它的文档部分:https ://docs.bokeh.org/en/latest/docs/user_guide/data.html#filtering-data
推荐阅读
- ios - 在我的代码中遇到 ObserveObject Array 更改的问题
- azure - 如何在 Azure 上创建新的构建代理来与我的私有 DNS 和 Azure DevOps 上的发布管道通信?
- r - 在带有分组数据的 tidyverse 框架中使用 PCA
- python - “conda env list”声称 env 不是有效的子命令
- python - 如何使用循环语句打印 1、3、7、15、31?
- python - Maya Python:制作 Playblast 并将其导出到我设置项目中的文件夹“movies”
- azure - 检查记录是否存在于 azure 逻辑应用程序内的 azure 表中
- nearprotocol - 使用未声明的类型或模块 near_blockchain
- python - Seaborn 不按顺序显示线图数据
- javascript - 复制粘贴文本区域行限制jquery