首页 > 解决方案 > 分组嵌套数据

问题描述

假设您有这样的 csv 数据文件:

    name, age
    Bob, 27
    George, 25
    Bill, 22
    Henry,27
    Carol,25
    Mary, 28
    Harold,27
    Jane, 25

我想按年龄汇总条形图的总数。所以我得到这样的总数:27(3)岁,25(2)岁等。

我正在使用 d3 v4

标签: javascriptd3.js

解决方案


如评论中所述,您可以使用d3.nest

const data = [
  {name: 'Bob', age: 27},
  {name: 'George', age: 25},
  {name: 'Bill', age: 2},
  {name: 'Henry', age: 27},
  {name: 'Carol', age: 25},
  {name: 'Mary', age: 28},
  {name: 'Harold', age: 27},
  {name: 'Jane', age: 25},
];

console.log(d3.nest()
  .key(d => d.age)
  .rollup(results => results.length)
  .entries(data));
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/4.13.0/d3.min.js"></script>


推荐阅读