Asking someone who doesn’t consider themselves to be a creative type to “describe their creative process” is like asking a fish to dry off.
When my instructor in my data visualization certificate program asked me this question (and to present my creative process to the rest of the class), I initially had this reaction (see Schitt’s Creek GIF).
But, after thinking about it for several minutes, I realized that in the convoluted mess that was my brain, there were hints of “process” in how I got from the dataset I found, to my final data visualization.
To that end, I decided to summarize that “process” and blog about it for those curious how to get started designing data visualizations.
I’ll use this data visualization on interstate migration as reference.
This step-by-step process assumes you already have a dataset in hand. In this situation, I found a dataset that had a lot of interesting data points and things to visualize. It did need some cleaning in order to make it usable by Tableau, but that’s another blog post.


Step 1: Exploration
My first step in creating a data visualization is putting the data into Tableau and creating a few different chart types with the data to see what stories start to jump out at me. This can be anything from an interesting outlier to an overall trend.
In this case, I knew when I was cleaning up the data that I wanted to visualize how people were moving from one state to another. So, I started my design by sketching in my dot-grid journal (I really like Cognitive Surplus notebooks — not sponsored).
Step 2: The sketch
I thought that visualizing this data on a map was the most intuitive, but what type of map chart would be my next question. Migration flows, in my mind, look like flight paths, so I did some Googling for “flight path maps in Tableau” and found a few tutorials on how to do them. Did I know how to do this particular type of map before starting this project? Absolutely not. My advice when you’re designing a visualization is first create chart types that you know and are familiar with, then put on your dreamer hat and think about how BEST to visualize this data, regardless of whether you know how to do it (yet!).
For this visualization, the map was just the first part of my visualization. I also wanted to give people some context so they didn’t have to hover or click on each state to see which states people were moving to the most. In other situations, this might be simply another chart type, such as a bar chart, sorted from largest to smallest. But, for the design I was going for in this situation, I wanted the lines on the map to be the real star of the show. So, I decided to add annotations that changed when you selected a different “From” or “To” state(s).
Step 3: The build
This is typically where I see people start when they design a visualization. They skip step 2 and go straight to step 3. The reason I think this a mistake is a sketch is much easier to redo/erase/tweak than fiddling around with sheets, dashboards, filters, etc. within Tableau when you don’t really know how you want the end product to look.
Once you have a sketch, you now have a laundry list of various elements that you know you need to create to build your dashboard.
Tweet
I usually start by building the biggest, most angry* chart of my visualization. In this case, it was my map — which, as you recall, I still didn’t know how to build. After several trials and errors (I was following a tutorial that was a couple years old, so some of the functions were now different in Tableau), I finally figured out how to make the flight-path map with the data I had.
When I dragged it to a brand new dashboard and sized it how I wanted (making sure all of the states were visible), I then knew how much room I had on the top and left side for the other elements. That sped up the process of creating the other sheets and graphics because I knew how much room I had and therefore how big the font could be.
I created my annotation sheets, placing them on the dashboard to make sure no matter which state I selected, all of the text would be visible for each one.
*Not really angry, just the big showpiece of the viz.
Step 4: Details and tuning
Now, after you have the bones of your visualization created, the fun part begins: Design details, colors and graphics!
Note: When I originally created this visualization, I wasn’t aware of how inaccessible some elements of a Tableau visualization are to screenreaders. So, if I redid this visualization, I would change a few things, including not creating an image for my title.
I stuck to a 3-color palette for the entire viz (green, white and gray) so that the design was cohesive and clean. The dark map background gives a nice contrast with the green of the migration paths and the extra annotation highlights — and I was able to replicate the dark grey water on the map for the backgrounds of my other sheets so that it appears as though the map is actually the background of the entire visualization.
I used Photoshop to create both the arrow between “From” and “To” — making it look like the center line of a passing lane on a road — and the title at the top. Then I used my sketch as a reference for how to organize my sheets on the dashboard. If you do make titles and graphics outside of Tableau, please be sure to at least add alt text to your images when you place them on your dashboard!
The final bit I did was format the tooltips. The way that this map is made leaves the tooltips in shambles with a bunch of very irrelevant information. So I made it simple with the “[Origin] to [Destination]: [Total number]” style.
Step 5: Get feedback (optional of course)
One of the best things about the #DataFam community on Twitter is how helpful people are with giving constructive feedback. If you want to get some honest (and useful) feedback on a visualization you’ve made or are in the process of making, just use #DataFam on your tweet and someone is likely to see it and offer some advice — or just give you kudos on your rad, well thought-out design!
I hope this was helpful to you — hey, you made it to the end at least!