我有一个患者数据集,每个患者都有一个年龄。
我有一个条形图,显示使用以下代码生成的患者年龄:
/*Age Bar Chart*/
var ageDim = cf1.dimension(dc.pluck('leeftijd'));//define age dimension
var ageGroup = ageDim.group().reduceCount();//define age group
var ageChart = dc.barChart('#ageBarChart'); //link chart to DOM
ageChart
.dimension(ageDim)
.colors('#542788')
.group(ageGroup)
.x(d3.scale.linear().domain([15,75]))
.gap(1)//gap between bars
.xAxisLabel("Leeftijd in jaren")
.yAxisLabel("Aantal Patiënten");
ageChart.render();
我的问题如下:我如何更改binsize,以便不显示年龄组43中有多少人,而是显示每组5人的年龄。因此,它将显示40岁以内的人数 - 45。
答案 0 :(得分:1)
这是组的值函数(map-reduce的“map”部分)。
您可以指定每个年龄段应该落在范围的低端,如下所示:
var ageGroup = ageDim.group(function(age) {
return Math.floor(age/5)*5;
}).reduceCount();//define age group
现在你将获得0,5,10等等的垃圾箱