Dewey Blobs

I’ve been fascinated by data visualisation for a year or two now, and I’ve recently been chatting to my good friend Iman about doing something with our circulation data. In particular, something that will be visually interesting to look at, whilst also giving you a feel for the data.
I’ve tried a few different things, but the Dewey Blobs are currently my favourite…
2008.06.23.ckos
(items borrowed on 23rd June)
The transactions are placed on a 32×32 grid based on their Dewey classification (000-999). Each transaction is shown as a semi-transparent circle with two attributes:
1) colour — based on the School the student making the transaction studies in
2) size — based on the popularity of the book (the larger the circle, the more times it’s been borrowed before)
Where many students from the same school borrow from the same Dewey classification on the same day, the colour is reinforced. If the borrowing is from multiple schools, then the colours begin to blend to create new hues.
For example, on this day the vast majority of transactions in the 300s were by Human & Health students (green)…

…but a couple of days later, the borrowing in the 300s is more complex, with students from several schools appearing (Business students are red and Music & Humanities students are blue)…

You can browse through a few of the blobs on Flickr.

12 thoughts on “Dewey Blobs”

  1. Hi, I’m guessing you that you chose a 2D grid for 1D data in order to save space but this does have the drawback of meaning that some numbers that are right next to each other appear a long way from one another on the screen eg, the blobs for 384 and 382. A cool way to get round this problem is to plot your points a long a single line which you then fold up along a space-filling curve http://en.wikipedia.org/wiki/Space-filling_curve
    The Hilbert curve (see wikipedia link above) turns out to be particularly successful at keeping similar numbers closely grouped.

  2. Thanks Tom — might give that a go! Looking at the Hilbert curve, it appears to double the number of points on each axis on every iteration, so there should be a curve for 32×32. Amazingly, there’s even a suitable Perl module available 🙂

Comments are closed.