计算假团体的百分比

时间:2017-04-20 18:38:38

标签: dc.js crossfilter

如何计算值访问器中的百分比?我以为我能够只添加分组值然后除以它然后乘以得到百分比?

var fakeGroup = {
                top: function() {
                return [
                    votes.top(Infinity).reduce(function(a,b) {
                    if(b.value > 0) {
                      a.value += elecVotesMap.get(b.key)
                    }
                    return a
                  }, {
                    key: "",
                    value: 0
                  })
                ]
              }
            }


        percentElec
        .group(fakeGroup)
        .formatNumber(d3.format("d"))
        .valueAccessor(function(){ return fakeGroup / 538 * 100; })

1 个答案:

答案 0 :(得分:1)

添加Ethans建议之后,由于十进制格式不正确,代码仍然无法打印,因为返回值为7.33。一旦我改变了显示的数字就完美了。

代码:

percentElec
        .group(fakeGroup)
        .formatNumber(d3.format(".2f"))
        .valueAccessor(function(d){ return d.value / 538 * 100 ; })