transforms=[['Overview',d3.zoomIdentity]].concat(d3.groups(data,
d=>d[2]).map(([key,data])=>{
const [x0,x1]=d3.extent(data,d=>d[0]).map(x);
const [y1,y0]=d3.extent(data,d=>d[1]).map(y);
const k=.8*Math.min(width/(x1-x0),height/(y1-y0));
const tx=(width-k*(x0+x1))/2,ty=(height-k*(y0+y1))/2;
return [`function ${key+1}`,d3.zoomIdentity.translate(tx,ty).scale(k)];
}))