我已经通过Crossfilter API文档多次阅读,但无法看到如何执行以下操作。Crossfilter中已过滤尺寸的大小?
想我已经设置了
crossfilter(event);
和维富:
var foo = event.dimension(function(d) { return d.foo; }),
foos = foo.group(function(d) { return Math.floor(d) ; });
然后,应用任何过滤器之前,event.size()
会给我的记录数的事件,foos.size()
将给我在foo维度的不同记录的数量
太棒了!现在我通过滑动刷子应用一些过滤器。 event.groupAll().value()
现在给我选择的事件中的当前记录数。再次伟大。
现在我该如何获取foo维度中不同记录的当前数量?我已经尝试了API原语的许多不同组合,但似乎没有任何工作。
任何想法?
crossfilter总是保持数据的排序索引,这就是它如何有效地应用过滤器/组,所以'top'和'bottom'不适用于排序,但它们必须遍历所有数据一次,所以你仍然得到O(n)操作而不是O(1)。 – Mortimer 2015-06-23 20:28:03