【发布时间】:2013-11-14 22:12:21
【问题描述】:
我有一个交叉过滤器,输入了以下数据结构。
project | subproject | cost
data = [
["PrA", "SubPr1", 100],
["PrA", "SubPr2", 150],
["PrA", "SubPr3", 100],
["PrB", "SubPr4", 300],
["PrB", "SubPr5", 500],
["PrC", "SubPr6", 450]]
我可以创建一个包含每个项目总成本的条形图:
var ndx = crossfilter(data)
var projDim = ndx.dimension(function(d){return d.project;});
var projGroup = costDim.group().reduceSum(function(d){return d.budget;});
我想要做的是按项目成本创建一个 dc.js 直方图...所以 {450: 2, 300: 1} 等。据我所知,crossfilter 只能有每一行的属性维度的输入。有没有解决的办法?
【问题讨论】:
-
benlaird,如果你找到了答案,你介意分享一下吗?
-
dc.js 中的直方图需要第二次分组。我目前的解决方案是不使用 dc.js 作为直方图。相反,我使用 crossfilter 进行分组,然后使用 d3 创建直方图(不需要对值进行分组)。
标签: crossfilter dc.js