D3.js crossfilter.js多维;“尺寸”;

D3.js crossfilter.js多维;“尺寸”;,d3.js,dc.js,crossfilter,D3.js,Dc.js,Crossfilter,不知道怎么做。我有以下数据: 日期,国家,数量a,数量b 我想用数量a和数量B之间的比率制作一个时间线图。我还想用国家创建一个条形图,它将显示每个国家的比率 问题是比率不是相加的,因此如果我这样做: var timeDim = ndx.dimension(function(d) {return d.Date;}); ratioAB = timeDim.group().reduceSum(function(d) {return QuantityA/QuantityB} 这将分别返回每个国

不知道怎么做。我有以下数据:

日期,国家,数量a,数量b

我想用数量a和数量B之间的比率制作一个时间线图。我还想用国家创建一个条形图,它将显示每个国家的比率

问题是比率不是相加的,因此如果我这样做:

var timeDim = ndx.dimension(function(d) {return d.Date;});
ratioAB     = timeDim.group().reduceSum(function(d) {return QuantityA/QuantityB}
这将分别返回每个国家的比率,并将它们相加。我想要的是将QuantityA和QuantityB相加,然后计算比率

因此,如果我在其中一个国家进行筛选,时间线图将只显示正确的比率


有没有办法将国家和日期都添加为维度?

您可以创建一个自定义分组来计算数量之和a、数量之和B以及两个维度之间的比率。或者您可以创建两个求和组,一个求和QuantityA,另一个求和QuantityB,然后在构建可视化时计算比率