【发布时间】:2021-06-09 20:41:01
【问题描述】:
我有一个 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
现在,我想在不影响原始数据框的情况下将其传递给绘图。为此,我想使用
Source.data = ColumnDataSource.from_df(data.loc[start:end]).
但是,情节只是一片空白,没有更新。 有什么特定的方法可以将这些数据传递给情节已经在使用的 CDS 吗?我无法理解具体的格式。或者是否有其他我应该尝试的过滤这些数据的方法?
【问题讨论】:
标签: python pandas filtering bokeh