Pulling Strings from a Tangle

October 6th, 2009 § 0 comments

So I finally get around to writing a bit about an older visualization project of mine: Pulling Strings from a Tangle – Visualizing a Personal Music Listening History (paper published in Intelligent User Interfaces 2009 – get it at the ACM Portal or here). The original idea was to let users learn about their listening behavior by presenting their histories from last.fm in a visualization. Previous visualization approaches like LastGraph (based on Lee Byrons Stream Graphs) focus on a high-level and abstract view on listening behavior, but we wanted to get down to the basic level of specific songs and the order they were consumed in.

Our first approach was to interpret a listening history as one long string of connected songs. We chose a force-directed layout for that, with each unique song as a node and connecting edges between successive songs. Songs that had been played more than once accordingly had multiple edges. This is the result:


While it’s nice to look at (see for example the “unfolding” of the tangle in the first part of the video), only certain aspects about the underlying listening history are discernible: Songs that have only been listened to once appear at the fringe of the tangle while more popular songs form the crowded middle. The user is also able to grab single songs and drag them around with connected songs following, but that’s about it.

After tangle, we tried to get more sense into the data: Similar to Cooper et al.’s approach to structuring photo collections, we divided listening histories into listening sessions that were separated by a certain amount of time. We then displayed these listening sessions above one another, added the current time frame at the border and connected identical songs (that are represented by separate icons this time) with yellow lines:


In the “Strings” visualization users are able to zoom and pan the display and focus on certain time frames. Also, the yellow lines help in finding patterns (similar to, for example, ThreadArcs): In the example above, the user has started several listening sessions with the same song (the fan of horizontal lines). Also, repeated sequences of songs (e.g., albums) are visible as bundles of yellow lines.

Still not content with the result, we decided to combine the benefits of both visualizations into one: By clicking on a song in “Strings”, all identical songs collapse into one:


This way, the user is able to see predecessors and successors of a certain song and when they’ve been listened to. These “Knots” are little pieces of tangle within the strings (alright, done with this metaphor). Explaining interactive visualizations is hard, so here’s a video of “Tangle” and “Strings”:

If you want to learn more about this project, read the publication or contact me! Thanks for reading.

Leave a Reply

Your email address will not be published. Required fields are marked *

What's this?

You are currently reading Pulling Strings from a Tangle at Augenmusik.


  • noise

    Error: Twitter did not respond. Please wait a few minutes and refresh this page.