LastGraph stream graph


LastGraph was an online application that takes data from and turns it into a series of lovely graphs.

It uses Graphication for the graph rendering, and Django for the web frontend. It used to be hosted at, but was taken down in November 2013 due to issues with the API.

The service used the API to collect users' weekly artist play counts for each week they'd been on, and then compiled these into a streamgraph (example above). These were available as PDFs or SVG files; when the service was launched these were so complex that they regularly crashed PDF viewers or starve computers of RAM as they tried to render them. Modern machines and viewers are much more capable; you can download an example PDF and see for yourself.

The architecture of the site was very primitive - a task queue backed by a database and a custom task runner powered everything, and the rendering infrastructure was built to run on multiple machines at once (as rendering the graphs was very CPU- and RAM-intensive).

By the time the project had shut down, it had created over 50,000 posters and served more than 150,000 users, and at one point the data cache of users' weekly charts had a significant percentage of's user data stored in it (a few percent or so).

Unfortunately, the declining popularity of and rise in services like Spotify that provide no way to extract music history meant the project had a built-in expiry date even if the API had stayed stable. I hope to recreate the graphs one day but on a decade-long scale; I'm keeping my personal stats safely stored just in case.

The source code can be found on GitHub.