Showing posts with label visualizations. Show all posts
Showing posts with label visualizations. Show all posts

Wednesday, 15 April 2009

Visual Listening Charts (Part 2)

Here's a follow-up to my previous attempt to visualize my listening history differently.

Basically, I've been looking for a fun project that would give me plenty of reasons to play with matplotlib.

My preliminary conclusion is that matplotlib is awesome. They couldn't have made it much easier to use for someone already familiar with Matlab.

Ayla Nereo (65 plays)Gilberto Gil (66 plays)Barney Kessel (66 plays)Le Volume Courbe (67 plays)Nick Drake (68 plays)Glenn Gould (69 plays)Kimya Dawson (83 plays)Essie Jain (88 plays)Ani DiFranco (93 plays)Jack Johnson (118 plays)

Sunday, 5 April 2009

Since ISMIR I've been listening to...

I'm currently a bit fascinated with different ways of representing my listening history.

I really like LastGraph which was inspired by Lee Byron. The graphs show how my listening preferences (and in particular how often I listen to my favorite artists) change over time.

I also like these visualizations by Martin. They show how artists move up or down over time in my chart.

Recently I tried to visualize my top artist chart using artist images, and readjusting their sizes so they correspond to how often I've listened to each artist respectively. Here's what I've been listening to since my last blogpost at ISMIR 2008:

Kaki King (22 plays)Ani DiFranco (22 plays)Cake (22 plays)Yo-Yo Ma (23 plays)Nick Drake (24 plays)Brian Eno (24 plays)Robert Lockwood Jr. (24 plays)Davy Graham (24 plays)Kimya Dawson (25 plays)Antônio Carlos Jobim (25 plays)Radiohead (25 plays)Barney Kessel (28 plays)Baden Powell (30 plays)Art Tatum (30 plays)Pablo Casals (43 plays)Herb Ellis (51 plays)Julian Bream (53 plays)John Fahey (58 plays)Essie Jain (74 plays)Jack Johnson (79 plays)

I think this montage says it all: I like black and white music from solo artists playing guitars.

Thursday, 26 June 2008

Matlab, Python, and a Video

I've been using Matlab extensively for probably almost 10 years. I have written more lines of code in Matlab than in any other language. I always have at least one Matlab application window open. I've probably generated at least a few million Matlab figures (one of my most favorite Matlab functions is close all). I've written three small toolboxes in Matlab (and all of them have actually been used by people other than me). I've told anyone who was willing to listen that I couldn't have gotten even a fraction of my work done without Matlab. In fact, 3 times in a row I convinced the places I've been working at that I needed a (non-academic) license for Matlab and several of its toolboxes. I even had a Matlab sticker on my old laptop for a long time. I frequently visited the Matlab news group and I'm subscribed to several Matlab related blogs. If I would have needed to take a single tool with me on a remote island it would have been Matlab. I guess it's fair to say I was in love with Matlab.

However, I always felt that it wasn't a perfect relationship. Matlab is expensive. Matlab is not pre-installed on the Linux machines I remotely connect to. In fact, installing Matlab on Linux is a pain (compared to how easy it is to install it on Windows). Furthermore, not everyone has access to Matlab making it harder to share code. Finally, Matlab can be rather useless when it comes to things that are not best described in terms of matrices that fit into memory, and I can't easily run Matlab code on Hadoop.

I had been playing with Python out of curiosity (wondering why everyone was liking it so much) but I guess I was too happy with Matlab to seriously consider alternatives. But then Klaas showed me how to use Python with Hadoop. Within a very short time I've started to use Python more and more for things I usually would have done in Matlab. Now I write more Python code a day than Matlab code. I still use Matlab on a daily basis, but if I had to choose between Matlab and Python, it would be a very easy choice. SciPy and related modules are wonderful. If I'd redo my PhD thesis, it wouldn't include a single line of Matlab code and instead lot's of Python code :-)

Btw, James pointed me to the following visualization showing activities and shared code of Python developers over time. This is by far the best information visualization I have seen in a very long time. I really like the idea and implementation. I wonder if something similar could be done for a piece of music where the coders are replaced with instruments, and the files are replaced with sounds.


code_swarm - Python from Michael Ogawa on Vimeo.