Как мне получить доступ к сумме массива здесь?
У меня есть набор данных, который выглядит примерно так:
var dataset = [
// apples
[{"x": 1, "y": 5 }, { "x": 2, "y": 4 }, { "x": 3, "y": 2 }, { "x": 4, "y": 7 }, { "x": 5, "y": 23 }],
// oranges
[{ "x": 1, "y": 10 }, { "x": 2, "y": 12 }, { "x": 3, "y": 19 }, { "x": 4, "y": 23 }, { "x": 5, "y": 17 }],
// grapes
[{ "x": 1, "y": 22 }, { "x": 2, "y": 28 }, { "x": 3, "y": 32 }, { "x": 4, "y": 35 }, { "x": 5, "y": 43 }]
];
И мне нужно знать максимально возможную сумму значений Y (она оказывается последней в серии -23 + 17 + 43
) - Я думаю, что мне нужно сначала использовать карту массивов, чтобы найти суммы, а затем взять максимум этих сумм.
Я думал, что смогу сделать это сconsole.log(d3.max(d3.map(d3.sum(dataset))));
но то, что я вижу в консоли простоundefined
- мой синтаксис явно неверен.
Я также попробовал это, что близко:
dataset.map(function (a) {
return d3.sum(a.map(function (d) { return d.y; }));
})
Что дает мне сумму каждой серии (Array [ 41, 81, 160 ]
) с максимумом160
, а не сумма первых элементов, за которыми следуют вторые элементы (Array [ 37, 44, 53, 65, 83]
) - Я ищу последнее - максимум должен быть83
.