Data Viz Done Right

January 18, 2017

Workout Wednesday: The State of U.S. Jobs

25 comments

Last week on my Data Viz Done Right site, I wrote about a great small multiples visualisation created by Matt Stiles that shows U.S. unemployment compared to the national average for every State. I recreated Matt’s work in Tableau, and your challenge for this week is to do the same. Personally, I find trying to rebuild visualisations a great way to learn.

Below you’ll see an image of what I created. Click on it for the interactive version. I’ve prepared the data for you here (it comes from the Bureau of Labor Statistics). Some things to keep in mind:

  1. My viz is 875x2150. Your’s doesn’t have to be this size, but I thought I’d provide it for guidance.
  2. I’m using the Source Sans Pro font, which you can download from Google Fonts. This is the font that Matt used in his version.
  3. The years should be displayed every 10 years.
  4. The axis line on for the year should be more distinct than the gridlines.
  5. The ends of each line should be colour-coded by whether it was an increase or decrease compared to the national average.
  6. You will need to calculate the national average. The national average needs to include the District of Columbia, but D.C. should not have its own chart.
  7. Values above the national average should start with a + and and below should start with a -
  8. The national average is the line you see at 0%.
  9. This is NOT a trellis chart, but if you think you can make it work as a trellis chart, go for it!
  10. The area above zero should be shaded. The hex code to use is #F7E6E2 and it should be shaded from 0- to +10%.
  11. Pay attention to the gaps between each State. I like how this gives it some breathing room.

This will be a very tedious exercise. To provide some context, this took me 2-3 hours to create. Don’t get discouraged and don’t feel like you have to do it all in one sitting. Basically, try to make yours look identical to mine.

Post an image on Twitter when you’re done and hashtag it with #WorkoutWednesday and please tag me so I see it. You can also comment below with a link to your workbook or with any questions you have. Good luck!

25 comments :

  1. https://rud.is/b/2017/01/18/workout-wednesday-redux-2017-week-3/

    ReplyDelete
  2. I am sorry I couldn't make this after a long time of struggling. :') How to only shade the area above zero in Tableau? Can anyone help? Thanks. -- "10. The area above zero should be shaded. The hex code to use is #F7E6E2 and it should be shaded from 0- to +10%."

    ReplyDelete
    Replies
    1. Shu, you need to add a reference band that goes from 0 to 10.

      Delete
    2. Yes, I made it! Thank you, Andy. I happened to see your blog this month and learned a lot from your blog articles and videos you shared at Youtube. I wish I could have found your blog earlier. :) Thank you.

      Delete
  3. Hi Andy.

    so, I downloaded the data and when I go to Tableau to connect to the excel file, the year shows as a number. I try to convert it to date but then all fields in the date column become null when I do that. Is this part of the exercise to convert it to date or is there something I am doing wrong? or perhaps I am supposed to leave it as a number?
    Love your website by the way. Just discovered it. this will be my first workout Wednesday. Thanks.

    ReplyDelete
    Replies
    1. Hi Alex,

      http://kb.tableau.com/articles/issue/all-dates-show-up-as-1905

      This article will help you to convert the year into suitable date format.

      Delete
    2. There's no need to convert it to a date. Just drag it up to dimensions, change the format so there are no commas and make it continuous. Making it a date doesn't give you any more detail.

      Delete
  4. You were not kidding about the time involved, Andy. This definitely took some time. I got close, but cannot figure out two things. My layout containers between the rows of States would not let me adjust the height, even though the ones between the states on rows would let me adjust the width.

    Also, how did you make the text in your text boxes clickable? I searched the forums a bit, but none of the answers seem to be the same as what you did.

    ReplyDelete
    Replies
    1. Mine are all in containers that I controlled the height of. They will space evenly automatically. I set the size of the blank boxes to 5px wide.

      I don't have any clickable text boxes. If you mean the state titles, those are simple State on the Columns shelf.

      Delete
    2. I was unable to set the size of the blank boxes for some reason. That option was not available.

      Also, for the text boxes, I am referring to the links in your footnotes. For example, you have VizWiz.com in colored text. If I click it, then it will take me to your blog. How did you do that?

      Delete
    3. To make them "clickable" I have to copy/paste from Word or something else that allows me to add a hyperlink to the text.

      Delete
    4. Andy - how did you set the blank boxes to 5px? I can see on your wb that I can right click & edit width. I only seem to be able to change width if I change blank to floating, but I can't seem to then find it when I set it back to tiled... Donna

      Delete
    5. Good question! I'm not sure what the rationale is for when Tableau allows you to change the width. I was looking for it on something I was working on today and couldn't find it. In my example, they are tiled. Basically, I don't know when it allows or doesn't allow the edit width option. Maybe ask on Twitter??

      Delete
  5. Hi Andy,
    Really enjoyed your viz! So downloaded it to explore and after some tinkering came up with this:
    http://tinyurl.com/grsxt4f
    Do you know of a way to control the state label positioning when the marks on the dual axes are already 'used'? I started moving labels manually, but that is really tedious work, and they reset way too easily... eventually, I just left them as they were. Wish there were an easy way to label the panes.

    ReplyDelete
    Replies
    1. Really like your take on this. You're running into the same issue I did with the State labels, hence why I used a header instead.

      Delete
    2. Well, figured out a way of doing it - sort of:) http://tinyurl.com/grsxt4f
      Added a green pill for the state labels and adjusted the matrix to generate more columns than rows, thus allowing more space for the added pill on the rows. I believe the trade-off between 50 sheets and the white space is OK, but how I wish the width of continous columns/rows were adjustable.

      Delete
    3. Nice work Ulrik. The only issue is the shading doesn't color code correctly on opposite sides of the scale.

      Delete
    4. That's because I chose to use the color to display the average percentage-point distance for the entire period.

      Delete
  6. Here is my viz for my first workout Wednesday.
    https://public.tableau.com/profile/publish/StateofU_S_Jobs1976-2015/Dashboard1#!/publish-confirm

    I think for being relatively new to Tableau (4 months) I did well. I could do a few things though:

    1.- I was not able to figure out how to color the section above 0.
    2.- I could not figure out how to color the ball at the end either.
    3.- Something is wrong with the % label at the end (notice Arkansas, for example). I get the correct amount if I don't worry about the "+" sign when positive. when I try to add the "+" sign most of them are ok, but a few states don't show the correct value. I am using:

    IF [end difference]>=0 then "+" +LEFT(STR([end difference]*100),3)+"%"
    ELSE LEFT(STR([end difference]*100),4)+"%"
    END

    where [end difference] is the actual value. I think it has to do with the rounding of the number.

    4.- I couldn't get the "+" sign on the axis either.
    5.- I was not able to separate the states with a space, nor remove the line below the state names.
    6.- And finally, I never used the column/row data in the dataset. I believe this is why I have problem number 5. I just used 10 different worksheets, with 5 states on each and combined them in a dashboard. I wasn't sure how to use the column/row data to build the viz. Still looks good, but I like yours better with the space between the states.

    by the way, I didn't focus so much on the font. I know that was part of the exercise but I wanted to get the viz right first, and yes, it takes time to build this!! Probably these 6 issues are pretty easy to fix, so if you have some time to let me know how to fix them that would be great. if not, that's fine. I think for being a beginner I did well. Thank you for posting this. I will visit your website regularly. Alex.

    ReplyDelete
    Replies
    1. Really good first effort Alex! I hope you enjoyed this exercise. Regarding your questions...

      1. This is done with a constant reference band that goes from 0 to 10.
      2. Download my workbook and see how I did it.
      3. The % label is done by using the custom number formatting option. You simply enter +0.0%;-0.0% in the custom box. No calculations required.
      4. Same as 3
      5. Each state is it's own sheet. I then separate them by a blank object and set the width of that to 5 pixels.
      6. I didn't use the column/row either. I created 50 different worksheets. What a tedious process!

      Delete
  7. Phew! Started this last Weds with the intention on finishing but I'm not very good at marathons :-) So tidied up what I had that gave me the basic principals just as much for my reference
    https://public.tableau.com/profile/donna.coles#!/vizhome/18012017-WW-StateofUSJobs/StateofUSJobs1976-2015
    Will now have a peak at yours. Donna

    ReplyDelete
    Replies
    1. Looks good so far Donna! This is an amazingly tedious exercise.

      Delete
  8. Hi,

    Thank you Andy for this helpful workout.

    I did a simple version using one sheet. Not exactly as yours viz....
    https://public.tableau.com/views/TheStateofU_S_Jobs/Dashboard1?:embed=y&:display_count=yes

    Regards

    ReplyDelete
  9. Hi Andy. I learned a lot from this workout. I tried to make my viz similar to yours but I am not able to make enough space between each chart. I used Column divider.

    https://public.tableau.com/profile/asmita.sonawale#!/vizhome/TheStateofUSjobs/TheStateofUSjobs

    Thank you

    ReplyDelete