Plot.plot({
width: 1200, height: 500,
color: { scheme: "tableau10", legend: false },
x: ({domain: [new Date(2023,9,31,17,0), new Date(2023,9,31,20,30)], ticks: d3.timeMinute.every(30), tickFormat: fmtTime}),
y: ({domain: [0, 130]} ),
marks: [
Plot.ruleY([0]),
Plot.lineY(data, {x: "Time", y: "Total", z: "Year", stroke: "Year", strokeWidth: 3, curve: "step-after"}),
Plot.tip(data, Plot.pointer(
{x: "Time", y: "Total", title: d => [d.Year, `${d.Total} kids`, `${fmtTime(d.Time)}pm`].join("\n")}
)),
Plot.axisY({anchor: "left", label: null}),
Plot.axisY({anchor: "right", label: "Total", labelAnchor: "top"}),
Plot.gridY(),
Plot.textX(datalabels, {x: "Time", y: "Total", text: d => `${d.Total}`, dy: -8, fontSize: 14}),
Plot.arrow(arrows, {x1: "x1", y1: "y1", x2: "x2", y2: "y2", bend: true}),
Plot.text(arrows, {x: "x1", y: "y1", text: "Year", fill: "blue", stroke: "white", fontSize: 14}),
]
})