function getTopNByOpponent(data, column, n) {
const groupedData = d3.group(data, (d) => d.opponent);
return Array.from(groupedData, ([opponent, players]) => {
return {
opponent,
topN: players.sort((a, b) => b[column] - a[column]).slice(0, n)
};
});
}