如何使用 Crossfilter 和 dc.js 创建 x 轴范围组?

How to create x-axis range groups with Crossfilter and dc.js?

这里有一个 fiddle 来帮助展示我想做的事情: http://jsfiddle.net/m4x7o5of/

我有一组记录,每条记录都有一个浮点值。例如:

var records = [{name: 'record1', value: 1.34563}, ..., {name: 'record5000', value: 0.62974}];

我想在 dc.js 中创建一个条形图,在 x 轴上绘制范围桶中的记录,例如 x 值介于 0 和 .5 之间的记录数,y 数.5 和 1 之间的记录,1 和 1.5 之间的 z 记录数,依此类推。

我正在使用序数刻度,这样我就可以将记录集分成 5 分,但我无法弄清楚如何将记录按我描述的范围分组在一起。在链接的 fiddle 中,只有值与绘制的序数匹配的记录才会立即显示。

是否可以像这样对记录进行分组?任何帮助,将不胜感激。

dimension.group 采用可用于派生组密钥的函数。因此 dimension.group(function(d) { return Math.floor(d); }); 将为您的数据集提供组键 0、1、2、3、4、5、6、7 和 8。您只需要构建一个函数,根据数据集中的值 returns 您想要的值。这就是你想要做的吗?