How does this work - is it rendered server side or client side? Very cool! Reminds me of the 2d historgrams and contour maps you can generate with R.
Basic process I built relied on caching map tiles.
Pre-compute your raw data by lat/long. Build that into map tiles you overlay on the map by determining map area and converting lat/long to pixels on the tile. Load new tiles as the map is panned. Do it quickly if you want users to be happy. Cache everything.