试图建立一个 简单的仪表盘 用热图(建立为图表)和行图。选择区域,我希望在行图上看到变化,反之亦然。但是这样就不行了。
var dim = ndx.dimension(d=>[d.x,d.y,d.region])
var group = dim.group().reduce(
(p,v)=>{
++p.count;
p.total+=v.salary;
p.avg_salary=p.total/p.count;
return p
},
(p,v)=>{
--p.count;
p.total-=v.salary;
p.avg_salary=p.total/v.count;
return p
},
()=>({avg_salary: 0,count: 0,total:0})
)
var graduationDim = ndx.dimension(d=>d.graduation)
var graduationGroup = graduationDim.group().reduce(
(p,v)=>{
++p.count;
p.total+=v.salary;
p.avg_salary=p.total/p.count;
return p
},
(p,v)=>{
--p.count;
p.total-=v.salary;
p.avg_salary=p.total/v.count;
return p
},
()=>({avg_salary: 0,count: 0,total:0}))
我到底做错了什么?任何帮助或建议都是非常感激的,谢谢。
这是你的reduce-remove函数中的一个错误。v.count
应是 p.count
:
(p,v)=>{
--p.count;
p.total-=v.salary;
p.avg_salary=p.total/p.count;
return p
},
因为这个字段在你的原始数据中不存在,所以你可能得到的是NaNs。