I told you I’d be back with more Discover Weekly analysis and here I am! I was inspired to take another look after seeing this great story that Owen Wang, a brilliant intern on the Storytelling dev team this summer, created. He found a tool provided by the Echonest that analyzes your different Spotify playlists based on a number of attributes. He explains it beautifully below, so check it out (it’s just a little wide on my blog, so you might want to open it in a new tab):
I’ve been saving all my Spotify Discover Weekly playlists with the intent of eventually doing something with them, and this tool from Echonest seemed like a great excuse to do some vizzing! After seeing some mildly interesting results about what Spotify recommends I listen to, I thought it’d be fun to compare the playlists to my actual music listening to see how often they got it right. Check out my viz below to see what I found. I decided to do it as one long scrolling viz since interaction between the charts is minimal and I was really itching to try the device designer. Enjoy it! And if you want a soundtrack as you peruse it, here is a gigantic playlist of ALL my Discover Weekly playlists combined into one:
A couple days ago, I was thinking how it had been a while since I’ve made a new viz and I thought I’d head over to /r/datasets and see if I could find something interesting. What I ended up finding was the dataset of my dreams.
This dataset was compiled by some researchers from Denmark. It contains information on over 68k users and their question answers*. It’s pretty hefty and I’m still digging into it, but I wanted to throw something fun up here before I spend too much time falling down the rabbit hole. OkCupid is an incredibly rich source of data, as evidenced by their own data blog. Just to whet your appetite of things to come from this amazing dataset, I’ve made this exploratory viz to let you compare personality traits.
The main technology that drives OkCupid is it’s matching algorithm. It’s based on questions it asks you in which you choose your answer and how’d you like the other person to answer. These questions are all broken up into categories and also used to generate scores for different “personality traits.” For those who are curious here’s most of mine, minus some less safe for work ones. 😉
On that note, here’s the viz! More to come, I’m sure.
*Update: There’s been some controversy over the ethics of this dataset. The authors have since removed it from the linked website. I had already removed the user name column from the dataset because it was extraneous and I didn’t need it. I’ve now also updated my viz to not include as much potentially identifying information such as location. I don’t feel that looking at this data without that stuff is unethical, but if you have thoughts on the matter, I’d love to hear them.
In case you haven’t heard, a great man and artist passed away last night, just days after his 69th birthday. That man was David Fucking Bowie. I’m devastated. And I’m mourning the only way I know how, with data. I threw together this visualization where you can track David Bowie’s tour history. I’ve also tried to hunt down a video from every tour on Youtube, so clicking on the tours in the bar chart below should open those up. I’m a little frustrated with the Path maps: it’s breaking up the paths by country. It also is showing a “*” for a lot of the dates and venues for when Mr. Bowie played a city multiple times, but adding those to the detail shelf messes up the path map even further. I’m guessing the solution is something having to do with LOD calcs, but I’m still experimenting. But, I wanted to get this out there so we can all start to heal.
UPDATE: My brilliant co-worker Richard Wesley had a super simple solution to my path map woes. Using Max([Country]) instead of [Country] still preserves all of the cities in places while also not using it as a dimension to divvy up the data. Thanks dude!!!!
For the past couple weeks, every time I’m making small talk with someone and they mention their excitement for the new Star Wars movie, I quickly segue into “OMG. HAVE YOU HEARD THE DARTH JAR JAR THEORY?” Judging by some data analysis of Reddit that I’ve done; I’m not the only nerd doing this.
For those of a slightly less geeky nature, Jar Jar Binks is an incredibly unpopular character from Star Wars Episode 1: The Phantom Menace. As the title implies, someone in the film is supposed to be an unexpected bad guy. But, we never really find out who that is. By the end, we assume it’s Emperor Palpatine. However, some Star Wars super fans have posited that the Phantom Menace is an even more unexpected character: Jar Jar Binks. Check out this video to see the whole theory:
This theory really rose to prominence in a Reddit post last October. In the dashboard below, I used import.io to scrape Reddit for any post containing “Jar Jar Binks”. You can see that prior to the theory becoming mainstream, the only people that routinely talked about Jar Jar were in the subreddit /r/whowouldwin, which pits all kinds of characters against each other and people debate who would win in that fight. After the theory, a whole subreddit on it /r/DarthJarJar because a popular place for people to suggest and discuss evidence for the theory of Jar Jar being a Sith lord.
I had a blast bringing back my weird point-of-view on making dashboards a little more fun to #Data15. Last year, I focused more on custom design and making things look as little like Tableau as possible. This year, I went a little more in the direction of doing some calculations and interactions that are a little more advanced. Let’s take a look at what I did!
But first, here’s the video I couldn’t get to play in my session:
Viz #1- Buzzfeed’s Most Viral Numbers
Ok, ok. Before you get too mad at me, yes. I admit it. I pimped my own viz. But it was out of desparation! All the vizzes submitted to me for Pimp My Viz were already too pimped out! Stop getting so good at Tableau, people! (Actually, don’t stop. It’s awesome.)
So here’s some stuff I did to make this dashboard a little more pimpin’
I figured out what color red Buzzfeed uses using the Colorzilla Chrome App. I then applied this color all over the dashboard. The charts themselves are pretty simple and didn’t need a lot of different colors. That’s actually great because it allows us to really solidify this theme with the BuzzFeed red.
I made a banner to try to emulate the header on the BuzzFeed website. I poked around on FontSquirrel for a while until I found a font that was a close approximation. FontSquirrel is great because every font on there is free to download and licensed for commercial use.
I cleaned up the bar chart by hiding the header for titles and instead moving the title onto label. I like doing this a lot to bar charts because it allows you to use the maximum amount of space showing the data and you get to have long labels without them getting cut-off.
First: it was already in the viz before I started pimping it, but you’ll notice I have a parameter in the corner to switch between the different kinds of reactions. If you don’t already know how to use a parameter to switch between measures, here’s a helpful walk through from Nelson Davis. It’s definitely a trick every viz pimp should know!
Next to the parameter chooser, I put little emojis that reflect what the reactions are. Why emojis? Because it’s BuzzFeed and I’m a millennial and I don’t know how else to communicate emotions. Making the emojis had two parts. First, you have to create a folder of custom shapes. Then, you have to make a Case calculation, like what you make for switching variables with a parameter, but this time, you just say “WHEN Broken Heart THEN ‘Broken Heart'” as a way to get all the different options into one variable. The annoying thing is that only one parameter can be selected at a time, so you’ll have to go through and select every option in the parameter to change the emoji for it.
Under the BuzzFeed header, we have a little fake article headline written in the style of a BuzzFeed listicle. This took a couple steps.
I wanted to title to be based on whatever number in the histogram had the most reactions. So first I created a Rank calculation based on my parameter measure.
I made a table that had the measure [Number in Title] along rows and displayed labels. I set up the labels to say “ articles that prove that item listicles elict the most “” reactions”
I hid the header of [Number in Title]. Finally, I needed to hid everything but the number 1 ranked number. I used a Lookup calculation based on rank: “Lookup([Rank],0” to filter out anything that was ranked higher than zero. Now the only thing left is the number one ranked [Number in Title] and it dynamically changes with the parameter.
Viz #2- Price of Gold Over Time
This is a pimped out version of a viz originally by former Tableau intern and wunderkind Quinn Schiller. You may remember him as the badass who figured out how to use pages to make animated gifs in Tableau. In honor of that, GIFs were one of the key features when I made over his Price of Gold dashboard (which has some excellent annotations and storytelling in it!). Here’s what I did:
Figure out how many coins you’ll need by determining how much one coin stands for. I went for each coin representing $19, as that was pretty much steadily the price of gold up until the 1960’s. I made a calculation called [Coin Count] which is quite simply the [Close] measure (closing price of gold) divided by 19.
Next, figure out what is the maximum number of coins you’ll need by visualizing the [Coin Count] measure. The tallest stack in my dataset was 2012, with 88 coins.
This part is tedious, so I recommend you do what I did and rewatch old episodes of “Gilmore Girls” while doing this part (especially in preparation for NEW EPISODES ON NETFLIX!!). We need to create a calculation for every possible coin in the stack, meaning 88 calculations. These calcs look something like this: “if sum([Coin Count]) > 1 then 1 end”. Repeat 88 times. This is what draws each of our coins on our chart.
Now we put [Measure Values] on Rows with [Year] on Columns and make sure that all 88 of our coin calcs are in the Measure Values window.
Lastly, we need a little flat coin custom shape. I found an image of coins stacked on top of each other on Google (remember, I’m not an artist…just a Google images curator) and cut out the top coin shape using the scissors tool in GIMP.
Some small design stuff: I changed the colors of the bubbles to reflect the Gold theme and added Scrooge McDuck diving into the piles of coins. I pointed out in my session, that although he’s totally useless here, using images with transparent parts can be used to do some cool things, for example this dashboard by Ancestry.com which uses a transparent house layered on top of a bar chart to make it look like the house is filling up with data.
Lastly, what kind of dashboard about gold doesn’t have BLING?!?! I created some glitter text using this glitter text generator. I then hosted the images on Imgur instead of linking directly to the images created by the generator. Why? Because Imgur supports HTTPS, which is crucial if you want your URLs to actually appear on the Tableau Public webpage. I added the glitter text gifs as web objects instead of as pictures because animated GIFs aren’t supported as images. Besides making this viz look ridiculous, the gifs don’t really add that much. But I thought of a borderline useful use-case for them!
OMG! A useful application for gifs?!?!?!
You’ve gotta be kitten me!
It’s true! I thought of a useful application for gifs! I know I’m not alone in lamenting that using animation on the Pages shelf in Tableau doesn’t not work once published to Tableau Public or Server. But, we can use gifs to work around this! Check it out:
How is this done? It’s actually pretty simple:
Create the gif. I used Camtasia, which I have for recording training videos, but that’s a pretty hefty piece of software. There’s plenty of free tools to create screen capture GIFs, so pick whichever one works best for you.
Host the gif online (again, Imgure FTW!) and embed it on your dashboard as a web object.
Float the sheet that you are animating on top of the web object. What we are basically doing is a variation on this trick I wrote about last year, to leave your viewers with a message when filters make your vizzes disappear.
Last, we need to create a button to make the viz disappear and show the animated gif behind it. To do this, I created a calculation that equals “Null” for everything. I made a button out of it by creating a sheet, putting the calc on text, and setting a square shape in the background. I edited the text label to say “See/Stop Animation”. I added to my dashboard with a dashboard action that effects the scatter plot on click and where clearing the filter excludes everything. This is what makes the chart disappear and the gif behind it reveal itself.
5 Easy Ways to Pimp Your Viz
To end the session, I gave a rapid fire list of 5 easy ways to Pimp Your Viz. This was based on a blog post I did earlier in the year, but here are those steps again, just if you need a refresher:
Colors. Don’t be satisfied with the default Tableau blue! I like using sites like Colourlovers to choose color palettes that aren’t built into Tableau. I also like that they limit their palettes to 5 colors, which makes you really think about how you are using your color. Ryan Sleeper wrote a pretty fantastic blog post about color a couple years ago that is still a great resource.
Marks Card Magic. Along with changing the color, there’s plenty you can do with the Marks card to pimp out your viz a bit. Make your bars fatter! Add labels! The stuff I did to the bars in the BuzzFeed viz above is a good example of how simple changes on the marks card can make a pretty strong impact when it comes to making a viz look custom.
Add a banner. A good title for your viz is a MUST. And you might as well take that opportunity to make a banner. Banners are great because you can communicate what the theme of your dashboard is and set the tone for what people are about to see. My typical banner strategy is to find an image related to what the dashboard is about, crop it, blur it, and add the title in a custom font. I often use Adobe Illustrator for this, but a few people in the viz design community have confessed to me they just use Powerpoint for this and it gets the job done. For a web based solution where you can create some REALLY gorgeous graphics for your vizzes, I highly recommend Canva. It’s a web based drag-and-drop design tool that’s super intuitive and has stock images built right in for you to use. I actually use it all the time for designing gig posters for my band and am just now starting to use it for viz work. But I have a feeling it’s going to be my go-to from now on.
Clean up the tooltips. SWEET MOTHER OF GOD JUST CLEAN UP YOUR TOOLTIPS, OK?!?! You should NEVER EVER EVER publish a viz with default tooltips. I assure you, they look like unreadable crap 100% of the time. In my session, I said that if you don’t clean up your tooltips, little fairies will fly into your bedroom at night and punch you in the face. I’m not joking. Although, the little fairy might be me in a tutu and fair wings, but I assure you, you’ll get punched. In the face. You don’t want that do you? So just clean up your tooltips, ok?
Thoughtful Interaction. A dashboard without interaction is like pizza without cheese…. an ABOMINATION. Think through how people might want to interact with the data you are presenting them and try to make the order of operations make sense. Make the order that you click things go from left-to-right and top-to-bottom since people in the Western world read that way. Have a friend look at your dashboard and just watch what they try to click on and make those the areas where you put your interaction. The more people play with your viz, the more they’ll remember it!
Finally, let’s wrap this up with some of my favorite tweets about my session.
Last year, I made a series of visualizations based on playlist data from my favorite local radio station: KEXP. Well, it’s a new year and there’s new data, so here I go again! First, let’s start with the classic viz I made last year. This view shows the top artists, albums, and tracks of the year. The color denotes which DJ played them. You can use the dropdowns to view specific DJs or toggle between artist, album, and track.
Our big winner here was Spoon, not surprising as they released one of the best new albums of 2014. However, DJs must’ve been drawing from their back catalog a bit to get them up to all those plays because their new album was in 5th place when it comes to top albums. The top spot actually went to what was probably my favorite album of the year, “Sun Structures” by Temples.
I mean…that hair + that awesome psychedelic sound….what’s not to love?
By the way, if you look at the top albums and tracks, you’ll often see an asterisk for artist. This is because the DJ assistants at KEXP who input all the playlist data can’t agree if it’s Alt-J or alt-J. Capitalization irregularities actually plagued this whole dataset, so some of the numbers may look a little lower than they should be. Another issue is when bands have song titles with the same name. For example, a track named “Feel” appears to be the second most played song, when in actuality that’s a combination of plays for songs by Bombay Bicycle Club, Ty Segall, Big Star, and a few others. Unfortunately, you can’t use combined fields in parameters in Tableau, so there was no way for me to fix it on this particular dashboard.
The number one song is “Red Eyes” by The War on Drugs. I was especially tickled by the high placement of the song “Queen” by local hero Perfume Genius. This song is amazing and deserves the number spot for the line “No family is safe when I sashay” alone. The video is pretty weird and rad:
The whole album is amazing and I couldn’t help but use intoxicants and lay on the floor and listen to it when I put the vinyl on for the first time.
I wanted a couple dashboards that people could go into and make insights about their favorite bands and DJs. First, an artist explorer. You can use the dropdown to choose a couple different artists to compare. There’s a text search, if you don’t want to read through the whole big list. As a starting point, I compare my two favorite Seattle bands, La Luz and TacocaT. They seem to be pretty even in plays.
Next, here’s a dashboard that looks at what DJs like to play. I’ve started out with infamous morning DJ and tastemaker John Richards. Man, that dude loves Strands of Oaks’ newest album. Especially on Tuesday mornings at 6 am. In fact, he actually said himself it was his favorite album of the year. It’s pretty fun to click on one of the artists on the right and see what time they are played the most.
This year, I really wanted to do something with the top 90.3 albums of the year. KEXP had a form up on their website in December for their listeners to vote for their five favorite 2014 album releases of the year. They tallied up the votes and ranked the albums and did a fun countdown at the end of December. I wanted to compare the ranks by listeners to how often those albums were actually played. That’s how I got this nifty quadrant chart:
I’ve divided the chart into 4 sections. “High Listener Rank, High DJ Plays” means that the listeners and DJs were in agreement that these albums fucking rocked and should be considered to top honors. The listeners and DJs are also in agreement in the “Low Listener Rank, Low DJ Plays” quadrant. The interesting stuff is really in the other two quadrants. I noticed that in “Low Listener Rank, High DJ Plays” there are a few more local bands and just generally less known bands. This section is showing our taste-makers at work. I’d bet that a lot of people voted for these albums after hearing them first on KEXP. The “High Listener Rank, Low DJ Plays” section is interesting because it’s filled with indie favorites: The Afghan Whigs, Jenny Lewis, Aphex Twin… these are some heavy-hitters. These are all pretty well-known artists outside the college rock scene, which is maybe why KEXP plays them a little less than some other bands.
Last up, I just wanted to make some quick points of things I thought would be interesting to know. For example, did you know that the artist with the most distinct albums played on KEXP was Johnny Cash? It probably helps that he made a buttload of them. Click through these story points if you want to see more stuff like that.
I think the third story point is especially interesting. I filtered the list to only show artists that only have one song played on KEXP and than sorted it by number of plays. So you can think of it as the ultimate 1-hit wonders on KEXP in 2014.The song that ended up in the top spot on that list was actually pretty cool:
Dig into those dashboards if you feel so inclined. And be sure to tweet me and interesting tidbits you find in there!
Tomorrow is the first month of November so that means people everywhere will put down their razors for the month and see what happens in support of men’s health. It’s Movember! If you haven’t heard, Matt Francis is organizing a Tableau Team. Unfortunately (or probably fortunately, really…) I can’t grow a mustache. Luckily, Tableau can grow one for me!
A few other Tableau celebrities got the mustache treatment, as well. Check it out in my viz!
Several months ago, I was doing some Google searching to figure out what a Barbie Dream Boat is worth these days. The Barbie Dream Boat was basically my most prized possession as a kid. I got it for Christmas when I was 7. It came in a gigantic box. It had a pool that you could fill with water. AND IT HAD A BLENDER. I made so many virgin piña coladas in there.