我想显示一个实体列表,根据某些元数据进行过滤,一旦选择了一个实体,我想获取该实体的所有数据以显示一段时间内的详细信息。这是两个不同的查询'对于crossfilter,问题是,我需要两个不同的Crossfilter实例吗?
详细说明:
我有一个数据集,其中包含每个实体的多行元数据,例如
[{'id': 0, 'time': 0, 'p1': 1, 'p2':345, 'value': 0},
{'id': 0, 'time': 1, 'p1': 2, 'p2':789, 'value': 1},
{'id': 1, 'time': 0, 'p1': 3, 'p2':123, 'value': 2},...]
首先,我想获得满足特定条件的所有行,让我们说.time==1
和.p1>2
。这些选择是为了得到唯一ID 的列表。
现在我展示id
所属的所有实体。如果用户选择其中一个,我希望得到与我的数据集不同的内容:.id=[selected id]
所有行。
我知道我可以在所有维度上重置过滤器,但我也希望保持之前的设置处于活动状态,因为用户可能会在我完成第二次选择后更改导致第一次选择的过滤器
所以我真正想要的是两个crossfilter实例。但是,我正在加载 lot 数据,理想情况下我不想将数据保存在两个不同的crossfilter实例中。
我想我的问题是:当我将数据加载到Crossfilter实例时,crossfilter会复制数据吗?如果确实如此,是否有办法维护它的两种不同的过滤状态而不必复制整个实例?