Last.fm Graph
About
This is a network graph visualization of the artists in a Last.fm users listening history and the artists that are similar. If you have a Last.fm account, you can enter your userid below and see a picture of your musical landscape. You can include your friends data and see where you overlap. Artists are colored by the last user to listen to them and simlar artists are the blue ones.
Blue dots that settle into the middle of the graph and are connected to lots of the artists you lsten to, or are connected to what your friends are into, might be bands worth checking out.
Code Notes
The main technical itch this page scratches is the drawing of large networks graphs that are updated continuously. There are lots of packages that will draw graphs but there was a particular organic feel I was after.
- D3js is the first thing most data viz types will think of and it does a great job at almost everything it takes on. Its graphing stuff is too good for what I was after. It moves very rapidly at first then quickly settles into a nice layout. This can be pretty jarring if the network changes.
- Cytoscape is a more graph-centric option and includes or has plug-ins for many diffferent layouts. I spent some time trying it out, but it was kind of hard to use and not very smooth.
What I'm happiest with right now is the combination of ngraph, ngraph.forcelayout, and PIXI. The ngraph code was easy to get started with and has the organic feel I was after while being efficient enough to handle a pretty large graph. PIXI is a very high performance drawing library designed for in-browser games and data visualization.
Data
I've been tracking the music I listen to using Last.fm since 2005. It's a great service and the kind of cross-platform thing that the monopolistic maonster eyeball-farms of today are killing off.
Data is provided to AtOmOdO.com by the excellent folks at Last.fm as part of their developer API. AtOmOdO is a huge fan of, but not affiliated with Last.fm.