Javascript 折线图分组后的dc.js访问值
我的代码是这样的。我想做的是平均swn_pospol 我在dateDimGroup中得到的是键和值。现在如何得到avg_pospol并将其用作Y轴Javascript 折线图分组后的dc.js访问值,javascript,d3.js,dc.js,crossfilter,Javascript,D3.js,Dc.js,Crossfilter,我的代码是这样的。我想做的是平均swn_pospol 我在dateDimGroup中得到的是键和值。现在如何得到avg_pospol并将其用作Y轴 var dateDim = ndx.dimension(function(d) {return d.fields.date;}); var dateDimGroup = dateDim.group().reduce( //add function(p,v){ ++p.count; p.sum_posp
var dateDim = ndx.dimension(function(d) {return d.fields.date;});
var dateDimGroup = dateDim.group().reduce(
//add
function(p,v){
++p.count;
p.sum_pospol += v.fields.swn_pospol;
p.avg_pospol = p.sum_pospol / p.count;
return p;
},
//remove
function(p,v){
--p.count;
p.sum_pospol -= v.fields.swn_pospol;
p.avg_pospol = p.sum_pospol / p.count;
return p;
},
//init
function(p,v){
return {count:0, sum_pospol: 0, avg_pospol: 0};
}
);
var lineChart = dc.lineChart("#chart-line");
lineChart
.width(1000).height(200)
.dimension(dateDim)
.group(cityDimensionGroup,"Positive")
.x(d3.time.scale().domain([minDate,maxDate]));
dc.renderAll();
我想要的是折线图X轴上的日期和Y轴上的平均pospol。如何实现这一点?在我看来,添加valueAccessor函数应该可以满足您的需要
lineChart
.width(1000).height(200)
.dimension(dateDim)
.group(cityDimensionGroup,"Positive")
.valueAccessor(function(p) { return p.value.avg_pospol; })
.x(d3.time.scale().domain([minDate,maxDate]));
未经测试,但至少有希望让你走上正确的道路