d3,js获取数组中对象的平均值

问题描述 投票:0回答:1

我正在尝试获取此数据集中'min'列的平均值:

var data = [{
    name: "Site A",
    max: 202,
    min: 0,
    var: 202,
    x: 1,
    product: "Diesel",
    case: "Base Case"
  },
  {
    name: "Site B",
    max: 145,
    min: 147,
    var: -2,
    x: 0,
    product: "Diesel",
    case: "Base Case"
  },
  {
    name: "Site C",
    max: 221,
    min: 238,
    var: -17,
    x: 0,
    product: "Diesel",
    case: "Base Case"
  }]

您能告诉我我该怎么做吗?>

d3.js
1个回答
0
投票

您可以使用d3.mean(),它以访问器函数作为第二个参数。该访问器函数将显示在数组中的每个对象中,并用于从中提取d3.mean()属性。

.min

看一下这个工作演示:

const average = d3.mean(data, d => d.min);
var data = [{
    name: "Site A",
    max: 202,
    min: 0,
    var: 202,
    x: 1,
    product: "Diesel",
    case: "Base Case"
  },
  {
    name: "Site B",
    max: 145,
    min: 147,
    var: -2,
    x: 0,
    product: "Diesel",
    case: "Base Case"
  },
  {
    name: "Site C",
    max: 221,
    min: 238,
    var: -17,
    x: 0,
    product: "Diesel",
    case: "Base Case"
  }];
  
const average = d3.mean(data, d => d.min);

console.log(average);
© www.soinside.com 2019 - 2024. All rights reserved.