This is really cool, thanks for posting! Have you tried executing the data processing in a WebWorker? This could be a great example of offloading cpu-intensive work to a WebWorker as well.
Is the code for your site open source or is it a template? I'm not able to read much of the text on my iPhone 5C and I'd be happy to contribute a fix if you don't have a smaller-screen device for testing.