data = {
const data = dd
.map(d => ({ ...d, date: new Date(d.date)}))
.sort((a,b) => sortOrder.indexOf(a.name) < sortOrder.indexOf(b.name) && -1 || +1 );
const dates = Array.from(d3.group(data, d => +d.date).keys()).sort(d3.ascending);
return {
dates: dates.map(d => new Date(d)),
series: d3.groups(data, d => d.name).map(([name, values]) => {
const value = new Map(values.map(d => [+d.date, d[fieldName]]));
return {name, values: dates.map(d => value.get(d))};
})
};
}