我有一个Bokeh服务器应用程序,它正在使用一个ColumnDataSource和两个DatePicker小部件来绘制vbar_stack图。我想使用DatePickers值的范围来过滤绘图上显示的数据。CDS由以下数据帧创建(索引由日期时间值组成(:
Device1 Device2 Device3
2020-10-24 H-m-S 0 1 2
2020-10-25 H-m-S 1 0 1
2020-10-25 H-m-S 2 0 0
2020-10-25 H-m-S 0 2 0
我想按特定的日期范围过滤数据,所以我制作了另一个数据帧,该数据帧仅由我们从DatePickers设置的参数中找到的日期范围内的行组成(在本例中,Datepicker的起始范围值为10/25/2020,因此10/24行被过滤掉(:
Device1 Device2 Device3
2020-10-25 H-m-S 1 0 1
2020-10-25 H-m-S 2 0 0
2020-10-25 H-m-S 0 2 0
现在,我想在不影响原始数据帧的情况下将其传递到绘图中。为此,我想使用CCD_ 1。
然而,情节只是一片空白,没有更新。有没有什么具体的方法可以将这些数据传递给绘图已经使用的CDS?我无法理解具体的格式。或者我应该尝试一种不同的方法来过滤这些数据?
我设法弄清楚了——为了将数据帧中的数据传递到我现有的数据源中,我必须制作一个新的CDS并将其更新为原始CDS,如下所示:
new_source = ColumnDataSource(selected)
source.data.update(new_source.data)
剧情正在更新!