A few days ago I published a new viz that I called The Biggest Boybands of all Time. This one has been flying around as an idea in my head for quite some time. But when I had a few days off after Christmas, I finally had time to sit down and actually create it. In this post, I’ll talk a bit more about how this viz came about.
Idea & Data Collection
This viz first started when I stumbled upon The Pudding’s awesome Internet Boy Band Database. This is a collection of boybands with No. 1 hits on the Billboard Hot 100, as well as more information about their members (such as age, physical traits, clothing style, etc.). This dataset was so much fun, however, it included a lot of qualitative data and not many numbers to do cool stuff with. But it got me googling and I soon wanted to find out what the most successful boybands of all time are. It’s actually surprisingly hard to find any decent data on that. Apparently, international record sales are not easily available. In the end, I settled for the numbers given in this Top 10 list by German music magazine Musikexpress. I then used good old Wikipedia to gather more information about the boybands on that Top 10 list. Overall, all of the information that is in the viz comes down to this (plus the names of the boyband members and the albums):
Sketching & Data Preparation
That’s where the real data prep fun only began, though!
For this viz, I started with some sketching (which I rarely do, but it was vital in this case)! As you can see, this first sketch is actually not that different from how the viz turned out in the end. I started with the top part and imagined the members (abstracted to be little blocks) standing on a kind of podium (which scales with the record sales). And then from that, I just thought of different ways to incorporate the other information I had gathered.
Okay, I had an idea of where I wanted to go – but how to get there? Obviously, this whole construct consists of different viz types. So putting it all together in Tableau would either require a crazy amount of worksheets – or I would have to go down the polygon route. But that would require some more calculations and data prep.
I first divided the final object into individual polygons:
- 1 small rectangle for each member of the boyband
- 1 larger rectangle for the record sales
- 1 very flat rectangle representing the timeline
- 1 triangle as the marker on the timeline
- 1 rectangle representing the bar for years active
- 1 rectangle to fill up the rest of the bar
- 1 square for each album
You’ll now have to create a row of data for each polygon edge, specifying its position on the x and y axes. That’s how in the end that 10-row-dataset from above snowballed into more than 800 rows of data. There was lots of calculating but with a bit of patience, some more sketching and the help of Excel I figured it out. It truely felt like being back in geometry class at times.
Creating the viz
The cool thing about doing it all with polygons is that your viz comes together just like that, without you really having to do much additional work at all. You just set the mark type to ‚Polygon‘, pull all the things that will create the individual polygons onto the Details shelf and specify the path (i.e. the order in which the different edges of the polygon will be drawn). And voila – your viz is basically done!
My initial idea was to keep it very simple, very minimalistic and keep it completely black and white (I guess I was still inspired by the recent #IronQuest challenge). I think it looks pretty cool as well, but I wasn’t 100% convinced. I felt like the simple colors did not really match the topic at hand. Boybands called for some more vibrant colors. For me, boybands equal 90s and 90s equal neon colors. So why not go full out neon?? I browsed Pinterest – my go-to source of inspiration for color schemes and landed on this cool color scheme on Imgur.
Almost done! For the finishing touch, I wanted to create this neon-sign glowy effect. My polygons were not enough for that – I needed lines! Luckily, you can create almost the same viz by simply changing the mark type to ‚Line‘. The only catch is that you’ll need one datapoint more for each polygon: For example, if you want to create a square with a line you’ll need 5 data points. That 5th data point will be the one that brings you back to where you started drawing the square and thus close it off.
So I duplicated my dataset, added the additional points and brought it back to Tableau. Then I gave my polygons some opacity and layered the lines on top of the polygons – and we’re done!
TLDR – From sketch to first draft to final result
This week’s dataset consisted of only 4 fields: the country name, percentage of girls married by 15, percentage of girls married by 18 and percentage of boys married by 18. I decided to concentrate on the girls and not use the boys percentage. The next thing I noticed was that the girls married by 15 are a subset of the girls married by 18 and I wanted my viz to reflect that somehow. That’s how the idea of the squares within squares formed in my head.
But how to get there?
I knew I had to use polygons – something I’ve never really worked with before. Luckily, the Flerlage Twins are there to help you out with a handy blog post. Some data prep was needed (pivot the measure columns and quadruple the data to be able to draw the 4 corners of the square), do some calculations to get the positions of the corners – and voilà!
Next, I had to get the country labels look nice. For that, I used another trick that was in Kevin’s blog post mentioned above: create the labels on a separate sheet and float them behind the polygon viz. I positioned the labels using transparent shapes – another trick I learned from the Flerlage’s blog. This has quickly become one of my favorite and most-used little tricks ever since I read the 14 use cases for transparent shapes blog post.
All that was left after that was implementing the sort functionality. I actually handled this in data prep by creating index fields based on the three sort options. Depending on the sorting parameter I would then use those indexes to calculate the X and Y position of each country in the small multiples grid. I then created the sort buttons and configured the parameter action.
All in all, I really liked how this turned out. It was really fun to try something new and explore polygons. I also rarely do small multiples, so that was a good opportunity for me to get more used to them. What’s also cool is that this was one of those cases where I had an idea in my head and I actually managed to recreate that exact idea – something that sadly doesn’t happen all the time. I do feel like this viz got more attention than I would usually get – so I guess other people out there liked it, too.
However, let’s be very clear about something: This is not necessarily what I would call a best practice approach. Is it compelling to look at? I would say so. But is it the best way to communicate the data? Maybe not. Because check out the example on the right: If the white square is 100% – how much do you think the grey square represents? The correct answer is 76%! The first time I saw this I thought my calculations must be wrong. But I double-checked. They’re not. It’s just that we are super bad at estimating and comparing areas!