如何在d3条形图中的单个栏中添加值

时间:2016-10-18 06:55:04

标签: javascript d3.js

我想将所有相同的值添加到一个条形图中,通常在d3中我们有堆叠条形概念,因为我们将每个条形图添加到单独的条形图中 这里我给出了

的示例运行代码

http://bl.ocks.org/d3noob/8952219

我想要想象一下这个域名2013-01,53我们还有4-5个条目,这一切都应该进入同一个栏目

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点,其中一种方法是使用nest。在这种情况下:

 var nestedData = d3.nest()
    .key(function(d) { return d.date;})
    .rollup(function(d) { 
         return d3.sum(d, function(e) {return e.value; });
    })
    .entries(data);

检查此演示,它将使用相同的键“date”汇总所有值:

var data = [{date: "2016-01", value: 53},
            {date: "2016-01", value: 10},
            {date: "2016-02", value: 42},
            {date: "2016-03", value: 17}];

     var nestedData = d3.nest()
        .key(function(d) { return d.date;})
        .rollup(function(d) { 
             return d3.sum(d, function(e) {return e.value; });
        })
        .entries(data);

console.log(nestedData);
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>