D3.js - 如何在上一步中使用结果

时间:2017-10-31 15:31:31

标签: javascript d3.js

我想在一个D3嵌套声明中获得总金额,总价和平均价格。我如何使用总金额和总价?我使用的是D3 V4.11。

  var closedByType = d3.nest()
  .key(function (d) { return d.type; })
 .rollup(function(v) {
    return {

      amount: d3.sum(v, function(d) {return d.amout}),
      price: d3.sum(v, function(d) {return d.price})
      //averagePrice = Total price /total amount --How can I do it?
    }
    })
  .entries(items);

1 个答案:

答案 0 :(得分:3)

amountprice存储在变量中,然后返回完整的结果对象。

试试这个:

var closedByType = d3.nest()
  .key(function (d) { return d.type; })
  .rollup(function(v) {
    amount= d3.sum(v, function(d) {return d.amout})
    price = d3.sum(v, function(d) {return d.price})
    return {    
      amount: amount,
      price : price, 
      averagePrice : price / amount
    }
  })
  .entries(items);