DC.JS / Crossfilter的部分和

时间:2013-10-18 02:40:40

标签: javascript crossfilter dc.js

我设置的数据集具有以下结构:

  

Q,FY,Name,Category,SubCategory,total,part1,part2,part3
  q1,2005,proj1,cat1,subcat1,100,25,50,25
  q1,2005,proj2,cat1,subcat1,100,25,50,25
  q1,2005,proj3,cat1,subcat1,100,25,50,25
  q1,2005,proj4,cat1,subcat1,100,25,50,25
  q2,2005,proj1,cat1,subcat1,100,25,50,25
  q2,2005,proj2,cat1,subcat1,100,25,50,25
  q3,2005,proj11,cat1,subcat1,100,25,50,25
  q4,2005,proj12,cat1,subcat1,100,25,50,25
  q4,2005,proj5,cat1,subcat1,100,25,50,25

我已经能够根据一个会计年度内的季度对总计进行求和,并根据类别对总量进行总计,并能够将这些数据呈现给图表。

我目前感兴趣的是,但是在抓取时遇到问题,是如何遍历part1,part2,part3列并获取这些列的总和,然后将它们渲染为条形图,每列代表自己,因为它是我的目标是渲染部分总和的条形图,然后根据选定时间范围或特定类别的过滤器调整总数。

关于如何解决这个问题的任何建议?
是否有必要为每列创建一个维度,然后根据该维度对总计进行求和,或者只是通过循环遍历列来解决问题?
即想要沿着这条线绘制图表..每列名称都列为单独的栏

enter image description here

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以查看我对similar question的回复。简而言之,您需要将数据格式设置为如下所示:

Q, FY, Name, Category, SubCategory, part
q1, 2005, proj1, cat1, subcat1, part1, 25
q1, 2005, proj2, cat1, subcat1, part2, 50
q1, 2005, proj2, cat1, subcat1, part3, 25

以下是一个示例:http://jsfiddle.net/jrideout/daaac/