I like the way of using paths to compress the dots instead of circle elements, but we lose individual dot events. Is it possible to get the best of both worlds w/ an x,y (in pixel-space) to ID lookup table used by functions called by mouse events?
Asking about this also as a way to transfer this solution to other problems, but readily useful here