1

我有一个这样定义的数据集:

var hour = data.crossfilter.dimension(function(d){ return d.date.getHours() + d.date.getMinutes() / 60; });
var hours = hour.group(Math.floor);

生成的结果 ( hours.all()) 如下所示:

[0, 124]
[1, 25]
[2, 5]
[3, 2]
[5, 339]
[6, 11648]
[7, 16334]
[8, 15919]
[9, 14078]
[10, 13816]
[11, 14646]
[12, 15079]
[13, 13718]
[14, 13947]
[15, 14055]
[16, 13995]
[17, 16166]
[18, 14958]
[19, 13991]
[20, 12769]
[21, 10638]
[22, 3939]
[23, 892] 

3请注意,5(4缺失)之间存在数据差距。如何配置交叉过滤器来填补空白0

4

1 回答 1

0

我认为您必须自己填写它们,因为我看不到 Crossfilter 如何将您没有赋予它的值分组。该责任应该落在您用来呈现数据的任何对象上。

你用的是d3吗?我认为线性刻度会自动做到这一点。如果没有,手动执行将非常简单。

于 2012-09-08T17:09:48.653 回答