Ich habe einen Datensatz, der in etwa wie folgt aussieht:Wie greife ich hier auf die Array-Summe zu?
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 }]
];
Und ich brauche die höchstmögliche Summe von Y-Werte kennen (es geschieht in der Serie die letzte zu sein - 23 + 17 + 43
) - I Denken Sie, dass ich zuerst eine Array-Map verwenden muss, um die Summen zu finden, und dann das Maximum dieser Summen nehmen.
Ich dachte, ich könnte dies mit console.log(d3.max(d3.map(d3.sum(dataset))));
tun, aber was ich in der Konsole sehe, ist nur undefined
- meine Syntax ist eindeutig falsch.
Ich habe auch versucht diese, die in der Nähe ist:
dataset.map(function (a) {
return d3.sum(a.map(function (d) { return d.y; }));
})
die mir die Summe jeder Reihe (Array [ 41, 81, 160 ]
) mit einem Maximum von 160
, nicht die Summe der ersten Punkte, gefolgt von den zweiten Elementen gibt (Array [ 37, 44, 53, 65, 83]
) - Ich bin auf der Suche nach letzterem - das Maximum sollte 83
sein.