A more practical geographic use of a clustering module than my initial demonstration.
Each shipwreck is represented with a circle 2 px in radius. Overlapping circles are combined and new centroids are calculated based on a weighted average of their areas. Because of the wandering centroid, the merger of larger circles can result in the clearing of a neighborhood around larger circles - this effect is most noticeable when combining thousands of circles.
Scroll to zoom in/out. Drag to pan.
I'm working on developing the clusterer a bit more, but you can find some initial documentation and source on github.
Shipwreck data hosted by ESRI here.
https://d3js.org/d3.v5.min.js
https://d3js.org/d3-tile.v0.0.min.js