I am opening this topic for a general discussion on visualization of MusicBrainz data, a topic I know a lot of people are interested about.
A bit of context
In April I had a discussion with @rob and @quesito about data visualization using the MusicBrainz database.
The discussion revolved mainly around one fact (MusicBrainz has a huge and rich database, and we should advertise it more) and two questions:
- what kind of visualizations can we do (and show) with the data we have?
- how can we help our users make their own visualizations and use our data in new ways? can we lower the entry barrier for them, if they don't know about programming/database/etc?
For the first point I did some proof of concept on my side, using Python + Jupyter notebook + various Python/JS plotting libraries on my local copy of the database (Jupyter notebooks are like HTML documents where you can mix code, documentation and graphs; people can download these files and run them locally or modify them easily).
The code is available on a git repository (on bitbucket and github). The first results (mainly about classical music) can be seen on github.io if you don't want to download the repository.
NB: I didn't try to make things particularly good-looking, I wanted to show different examples of data to extract and display. This is still work in progress and I have other ideas...
Building an infrastructure for data visualization
In April we discussed about the possibility of publicly hosting this kind of notebooks on a server, so that MusicBrainz users could write their own visualization examples without the need to install a local copy of the database.
As a first step I used the existing Docker setup for MusicBrainz to add a Python/Jupyter notebook server connected to the database (see for example this page). You can find the docker configuration on musicbrainz-docker.
If people are interested, we should look at the feasibility of having this kind of container (with the proper security and multi-user capacity) hosted directly by MetaBrainz.
Dear MusicBrainz users: it's your turn
I'd be happy to have some feedback:
- does that look interesting/useful to you?
- What would you like to see? Do you have other ideas for visualization?
- Would you like some of those to be added on MusicBrainz web pages? (that was also one of my personal goals here, I'd like to see work/artist timelines on their overview page)
- Would you be interested in having access to a sandbox to play with the data yourself?
- How can we extend this ideas to LB/AB/etc.?
And of course feel free to use the ideas/setup above. Share your results here! I'll try to post some screenshots later (but nothing as cool as the mockups @quesito showed some time ago)