Posts by Luke Stanke

2019 Week 37: What percent of sales is from the east region?

This week we are making bar charts. Of course, this week there is a small twist to the bar charts. The ends of the bar charts need to be rounded. There are several ways to do this. I’d personally suggest unioning the data to itself–but like I said, there is more than one way to get to the solution!

Also, I wanted to work with accessiblity of parameters in Tableau. Given the static nature of parameters, there’s very little we can format to make the text truly accessible. I saw how Jacob Olsufka made this filter/parameter at the top of this visualization. Naturally, I use it all the time now. -LS

Challenge


Click image to view on Tableau Public

Requirements

  • Format: 600px by 800px
  • Create a rounded bar chart that shows the percent of sales for each sub-category by the selected region of the dropdown.
  • The rounded bar charts should be overlayed on a second bar that goes to 100%. The color should be lighter tinted gray than the color you select for the main bar charts.
  • Integrate the Region dropdown in the title.
  • Place the percentage of the total at the end of the 100% rounded bar.
  • Match formatting–if you share on Twitter I’ll be looking out for this.
  • One more thing: this must be a single sheet.

Dataset

This week uses the superstore dataset for Tableau 2019.1. You can get it here at data.world

Share

After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

Track your progress

Also, don’t forget to track your progress using this Workout Wednesday form.

Attribute & Tag

When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration. Don’t forget to add the hashtag #WorkoutWednesday2019, as well!

Solution

Watch

 

2019 Week 33: 2018 IronViz Finalist Corey Jones’s Table Challenge

This week are excited to continue the community challenge month by welcoming Corey Jones. Based out of Philadelphia, Corey was a 2018 IronViz Finalist and is an avid sports fan.

One of the great things that comes with working with a talented team is that you have the opportunity to learn from and push each other to improve. I am fortunate to work with Garvi, Kizley and (twitterless) Hima. Often we are challenging each other to solve formatting tricks or other problems. Today, I bring you a challenge from our team:

Listen, we all have had to create a table in Tableau. And if you are like me, you’ve probably been asked “Can you shade certain rows?”, or even better, “Can you make some rows bold?” Typically, I say no — because who wants to do that — but today we are going to practice. I hope you like formatting, because this week is all about creative formatting!

Challenge – Intermediate


Click image to view on Tableau Public

Requirements – Intermediate

  • Dashboard size: 900 x 600
  • Dashboard is filtered for orders in 2018.
  • You may use up to 3 sheets — no transparent sheets.
  • Create a KPI table of Sales, Profit, Profit Ratio and Quantity:
    • Table is filtered for a user selected region
    • Rows appear shaded for sub-categories where the filtered region contributes greater than a user-defined value for % of total sales
    • Row shading must remain when dashboard is filtered for subset of subcategories
  • Create a stacked bar chart that highlights the percentage of total sales coming from the selected region
    • Color the sales related to region selected — the remaining sales should be outlined
  • The title updates dynamically for region and percentage threshold.

 

Challenge – Advanced


Click image to view on Tableau Public

Requirements – Advanced

Same rules as above, plus…

  • KPI Table:
    • Rows appear shaded and bold for sub-categories where the filtered region contributes greater than a user-defined value for % of total sales
  • Stacked Bar Chart:
    • Labels are on the inner edge and the labels may not be manually positioned
  • The entire dashboard should appear as one worksheet with no gaps in row dividers.

 
 

Dataset

This week uses the superstore dataset for Tableau 2019.1. You can get it here at data.world

Share

After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @CoreyJ34, @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

Track your progress

Also, don’t forget to track your progress using this Workout Wednesday form.

Attribute

When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.

Solution

Watch

Sorry, the solution is not posted, yet.

 

2019 Week 29: Which months do we see a higher number of orders?

Last week we were putting together a deck for an executive team and we wanted to show the seasonality of data while still showing the overall average. In our time crunch we came up with our challenge for this week!p

Challenge – Intermediate


Click image to view on Tableau Public

Requirements – Intermediate

  • Format: 900px by 600px
  • Create a line that shows the total orders per day by segment. Show the value on the left side of the line.
  • For each month, show a bar above or below the line with the orders per day for that month.
  • Label the bars with the percent difference between the monthly value and the overall value.
  • Match tooltips.
  • Color choices are up to you.

Dataset

This week uses the superstore dataset for Tableau 2019.1. You can get it here at data.world

Share

After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

Track your progress

Also, don’t forget to track your progress using this Workout Wednesday form.

Attribute

When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.

Solution

Watch

 

2019 Week 24: Can you build a side-by-side bar chart?

This week you need to build this side-by-side bar chart. There are a couple of tricks but you should be able to do this in under 30 minutes (for real!). There are at least 4 ways to solve this problem. There are also two problems an intermediate and an advanced.

Challenge – Intermediate


Click image to view on Tableau Public

Requirements – Intermediate

  • Format: 600px by 600px
  • Create side-by-side bar chart that shows:
    • profit ratio for the Home Office segment and category.
    • Overall Profit ratio for all segments by category.
    • Profit Ratio: sum(profit)/sum(sales)
  • Add a label for the Overall bar and the Home Office bar
  • Inside the Home Office bar show the percent difference between Home Office and Overall — ([Home Office] – [Overall])/[Overall]
  • Make sure a footer of the categories shows up at the bottom of the dashboard.
  • Color choices are up to you.
  • Challenge – Advanced


    Click image to view on Tableau Public

    Requirements

    • Follow all intermediate requirements.
    • Create bars so there is more space between categories.
    • No annotations allowed
    • SUPER DUPER WAYYYYYYY ADVANCED OPTIONAL: Do not use Measure Names or Measure Values. Do not use table calculations.
    • Dataset


      This week uses the superstore dataset for Tableau 2019.1.  You can get it here at data.world

      Share

      After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

      Track your progress

      Also, don’t forget to track your progress using this Workout Wednesday form.

      Attribute

      When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.


2019 Week 20: Can you show the top and bottom states for total orders

This week Ann and I are doing a live Workout Wednesday for the San Fransisco Bay Area Tableau User Group, so I tried to make sure this challenge can be done in 30 minutes.

Challenge


Click image to view on Tableau Public

Requirements

  • Format: 750px by 850px
  • Create a bar-on-bar chart that shows:
    • A top bar counting distinct orders for 2018.
    • A bottom bar counting distinct orders for 2017.
    • The top 10 states for total orders in 2018.
    • The bottom 5 states for total orders in 2018.
    • The average for all other states.
  • Add a label that show the total orders for 2018 for the bottom and top states and shows the average total orders per state for the Other States
  • Add another label that shows the year-over-year change. Use arrows (↓ and ↑) to indicate the change. When there is no change use NC.
  • Add a filter for Category.
  • Sort by total orders in 2018.
  • Make the bar for the top 10, bottom 5, and all others 3 different colors.
  • Add labels for the Top and the Bottom.
  • Match formatting and tooltips.
  • Dataset


    This week uses the superstore dataset for Tableau 2019.1.  You can get it here at data.world

    Share

    After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

    Track your progress

    Also, don’t forget to track your progress using this Workout Wednesday form.

    Attribute

    When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.


Week 17: Can you build an automated monthly report

A few weeks ago I had this problem: I needed to create a dynamic table that showed the last 12 full months of sales for a particular channel/category of the business but I also needed to show the month-over-month and year-over-year totals. I didn’t know how to do it right away so I asked the Workout Wednesday team and they responded with many solutions. So I changed this week to match that exact problem. I’m also including some information on financial reporting since I wasn’t familiar until recently. We’ll be calculating basis points. The basic formula is (%a -%b)*10000. Where a and b are just two percentages. This means 1 bps = 0.01% and 100 bps = 1.00%.

Challenge


Click image to view on Tableau Public

Requirements

Intermediate

  • Format: 1100px by 400px
  • Create a table that shows the following metrics for the last 12 full months by category:
    • Percent of total sales that are from the Consumer segment.
    • Month-over-month change in % Consumer sales using basis points (bps). (Current Month % – Prior Month %) * 10000
    • Year-over-year change in % Consumer sales using basis points (bps). (Current Month % – Same month prior year %) * 10000
  • Add a filter so that you can toggle dates. Note the months will only show when data is for a complete month of data.
  • Match formatting border and fill formatting.
  • ├ and └ will be useful.

    Dataset


    This week uses the superstore dataset for Tableau 2019.1.  You can get it here at data.world

    Share

    After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

    Track your progress

    Also, don’t forget to track your progress using this Workout Wednesday form.

    Attribute

    When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.


2019 Week 13: Can you create a dynamic view of historical DATA prices?

This week were taking a look at Tableau Stock prices using candlestick charts. So whats different about this? The dates aggregate at differet levels depending on the number of candlesticks! This challenge is not easy so there are 2 achievement levels. You can make this chart using either a gantt chart or by unioning the data to itself. I’d recommend the latter.

Challenge


Click to view on Tableau Public

Requirements

Intermediate

  • Format: 800px by 800px
  • Create a candlestick chart with two stick that dynamically changes date based on the date ranges selected.
    • If there are more than 20 months of dates: aggregate to month.
    • If there are less than 20 months of dates but more than 15 weeks of dates: aggregate to week
    • If there are less than 15 weeks of dates: aggregate to days
  • For the “background” candlestick: the high point should be the highest high from the dynamic date period; the low point should be the lowest low from the dynamic date period.
  • For the “foreground” candlestick: two values should be the open of the first date of the dynamic date period and the close of the last day of the dynamic date period.
  • Add color to show whether the final close price is higher or lower than the first open price.
  • To filter the data create two parameters: One that selects a date in the center of a time period and another that helps you select dates prior to and after the center date. (ex: selecting a value of 7 for 2019-March-23 will filter from 2019-March-20 to 2019-March-27)
  • Match tooltips and formatting
  • Advanced

  • Add a second chart that shows the entirety of the data but uses reference lines to suggest the range of data showing above it.
  • Use rounded corners on your candlesticks.
  • Dataset

    This week uses Tableau stock prices.  You can get it here at data.world

    Share

    After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

    Track your progress

    Also, don’t forget to track your progress using this Workout Wednesday form.

    Attribute

    When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.


2019 Week 9: Can you remove the scroll bar?

When I started Workout Wednesday I made a list of potential challenges. This challenge was the second challenge I wrote down. After more than 20 challenges I’ve finally gotten around to sharing it!

Challenge


Click to view on Tableau Public

Requirements

  • Format: 1000px by 600px
  • Create a visualization with bar charts that show total sales, total profit, and total quantity by city-state (See below for state abbrevation calculation). Sort by sales.
  • Create a calculation that you can use as a filter that shows cities in groups of 10. Make sure the labels based on the rank i.e. the top ten are 1-10, the 2nd 10 are 11-20, ect.
  • Make sure the bar size remain proportional with the maximum value for each. Do not used a fixed axis.
  • Add a zero line for profit only.
  • Match formatting: Size 11 font, bar color #ED7470.
  • Dataset

    This week uses the superstore dataset for Tableau 2018.3.  You can get it here at data.world

    Share

    After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

    Track your progress

    Also, don’t forget to track your progress using this Workout Wednesday form.

    Attribute

    When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.


    Abbreviation Calculation

    CASE [State]
    WHEN "Alabama" THEN "AL"
    WHEN "Alaska" THEN "AK"
    WHEN "Arkansas" THEN "AR"
    WHEN "Arizona" THEN "AZ"
    WHEN "California" THEN "CA"
    WHEN "Colorado" THEN "CO"
    WHEN "Connecticut" THEN "CT"
    WHEN  "Delaware" THEN "DE"
    WHEN "District of Columbia" THEN "DC"
    WHEN "Florida" THEN "FL"
    WHEN "Georgia" THEN "GA"
    WHEN "Idaho" THEN "ID"
    WHEN "Illinois" THEN "IL"
    WHEN "Indiana" THEN "IN"
    WHEN "Iowa" THEN "IA"
    WHEN "Kansas" THEN "KS"
    WHEN "Kentucky" THEN "KY"
    WHEN  "Louisiana" THEN "LA"
    WHEN "Maine" THEN "ME"
    WHEN "Maryland" THEN "MD"
    WHEN "Massachusetts" THEN "MA"
    WHEN "Michigan" THEN "MI"
    WHEN "Minnesota" THEN "MN"
    WHEN "Mississippi" THEN "MS"
    WHEN "Missouri" THEN "MO"
    WHEN "Montana" THEN "MT"
    WHEN "Nebraska" THEN "NE"
    WHEN "Nevada" THEN "NV"
    WHEN "New Hampshire"	THEN "NH"
    WHEN "New Jersey" THEN "NJ"
    WHEN "New Mexico" THEN "NM"
    WHEN "New York" THEN "NY"
    WHEN "North Carolina" THEN "NC"	
    WHEN "North Dakota" THEN "ND"
    WHEN "Ohio" THEN "OH"
    WHEN "Oklahoma" THEN "OK"	
    WHEN "Oregon" THEN "OR"
    WHEN "Pennsylvania" THEN "PA"
    WHEN "Rhode Island" THEN "RI"
    WHEN "South Carolina" THEN "SC"
    WHEN "South Dakota" THEN "SD"
    WHEN "Tennessee" THEN "TN"
    WHEN "Texas" THEN "TX"
    WHEN "Utah" THEN "UT"
    WHEN "Vermont" THEN "VT"
    WHEN "Virginia" THEN "VA"
    WHEN "Washington" THEN "WA"
    WHEN "West Virginia" THEN "WV"
    WHEN "Wisconsin" THEN "WI"
    WHEN "Wyoming" THEN "WY"
    END
    

2019 Week 5: Where are the biggest discounts?

I recently put together this chart for work. I spent more time making it amazing than I am willing to admit, this is mostly due to the amount of formatting I did. I thought I’d make a formatting challenge this week!

Challenge


Click to view on Tableau Public

Requirements

  • Format: 540px by 800px
  • Create a heat map of average discount by sub-category and region.
  • Labels for region should be below the heat map tiles.
  • Use Tableau Light, Size 7 for the tile labels.
  • Use Tableau Light, Size 8, Color #555555 for the column and row labels.
  • Sort sub-categories within each category by average discount.
  • Use Tableau Medium, Size 9, Color #898989 for the category header label.
  • Add bars above and to the right of the heat map indicating the average discount for sub-category and region.
  • The bars should be approximately 2px away from the heat map tiles.
  • Make sure the bar sizes are identical.
  • Add labels to the right of the bars for the bar chart to the right of the heat map.
  • Add labels above the bars to the bar chart above the heat map.
  • Use Tableau Light, Size 9, Color #555555 for the bar labels.
  • Set the color range for all objects to be between 0% and 50%.
  • Create a custom sequential color palette. Use #4A4E68.
  • Add just a tiny amount of white space between each heat map tile (~1px).
  • Add a divider between categories for the entire visualization set. Use #D4D4D4.
  • Add padding of 80px to the left of the visualizations and 50px to the right.
  • Dataset

    This week uses the superstore dataset for Tableau 2018.3.  You can get it here at data.world

    Share

    After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, and @curtisharris_!

    Track your progress

    Also, don’t forget to track your progress using this Workout Wednesday form.

    Attribute

    When you publish your solution on Tableau Public make sure to take the time and include a link to the original inspiration.


2019 Week 1: Sales Drill Down

We’re back for 2019. We’re using the hashtag #WorkoutWednesday2019. The challenge this week involves building a dynamic drill-down table. This one is slightly more difficult than average so be sure to check the spoilers at the very bottom if need be.

Challenge

 


 

Click to view on Tableau Public

Requirements

  • Dashboard size is 500px wide by 600px tall.
  • Create a table that shows sales for category and year. When you click on a category show the sales by sub-category below it.
  • Use the right arrow “►” and the down arrow “▼” to indicate when details are showing. This makes it look like an accordion.
  • Match row borders and row shading to highlight these values.

Dataset

This week uses the superstore dataset for Tableau 2018.3.  You can get it here at data.world

Share

After you finish your workout, share on Twitter using the hashtag #WorkoutWednesday2019 and tag @AnnUJackson, @LukeStanke, @lorna_eden, @curtisharris_, and @VizWizBI!

Track your progress

Also, don’t forget to track your progress using this Workout Wednesday form.

Spoilers

  • Union the data to itself one time.
  • One part of the union will create the summary for category and the other will create the summary for sub-category.