d3.nest() Examples
http://stackoverflow.com/questions/25642422/array-manipulation-with-d3-nest-and-rollup
HTML
<a href="http://bl.ocks.org/phoebebright/3176159">tutorial</a><br/>
<pre id="tdata"></pre><br/>
<pre id="rdata"></pre><br/>
<pre id="tdata2"></pre>
CSS
pre {
font: bold 10px Arial;
}
JavaScript
var data =
[
{ "plts": "Zlnd", "bin": "150k", "amount": 4786 },
{ "plts": "Zlnd", "bin": "200k", "amount": 1319 },
{ "plts": "Zlnd", "bin": "250k", "amount": 249 },
{ "plts": "Hsls", "bin": "150k", "amount": 1101 },
{ "plts": "Hsls", "bin": "200k", "amount": 412 },
{ "plts": "Hsls", "bin": "250k", "amount": 674 }
];
var tdata =
d3.nest()
.key(function (d) { return d.plts; })
.entries(data);
d3.select("#tdata").text(JSON.stringify(tdata, null, '\t'));
var rdata =
d3.nest()
.key(function (d) { return d.plts; })
.rollup(function(values) {
return d3.sum(values, function(v) { return v.amount; })})
.entries(data);
d3.select("#rdata").text(JSON.stringify(rdata, null, '\t'));
var tdata2 =
d3.nest()
.key(function (d) { return d.bin; })
.entries(data);
console.log("hello")
d3.select("#tdata2").text(JSON.stringify(tdata2, null, '\t'));