Sources and data

Where the rules and numbers come from.

Every rule traces to a published source. Every number traces to the HR Dataset.

Sources

Four bodies of practice, one set of rules.

SourceWhat it contributes
Cole Nussbaumer Knaflic, Storytelling with Data (Wiley, 2015) and the storytellingwithdata.com blogExplanatory vs. exploratory design, decluttering, grey plus one accent, making the takeaway explicit, words as data, avoiding pies
Gene Zelazny, Say It with Charts (McGraw-Hill)Choosing the chart from the message and the five comparisons (component, item, time series, frequency, correlation)
Consulting slide practice (McKinsey, BCG, Bain)Action titles, one message per page, the takeaway box, page anatomy with source and date
IBCS (International Business Communication Standards)Consistent notation, honest scales, title blocks with units and periods, no decoration
Barbara Minto, The Pyramid PrincipleAnswer first, then the proof, so page titles read as a story
Cleveland and McGill, "Graphical Perception" (1984)Why people judge position and length more accurately than angle and area
Microsoft Power BI documentation and practitioner guidance (SQLBI, Guy in a Cube, the r/PowerBI community)The exact settings, DAX patterns and layout techniques on each page
The data

301 employees, hired from 2006 to 2016.

All examples use the HR Dataset by Dr. Rich Huebner, published on Kaggle (kaggle.com/rhuebner/human-resources-data-set). It describes a fictional company: departments, positions, pay rates, hiring sources, performance scores, hire and termination dates, and reasons for leaving. A second table lists one year of recruiting spend by hiring source.

Only totals and rates appear on this site. No names, birth dates, zip codes or employee numbers are used in any chart.

Definitions

Every number means one thing.

TermDefinition
LeftEmployment status is "Voluntarily Terminated" or "Terminated for Cause". 102 of 301 employees.
Turnover rateEmployees who left divided by all employees in the dataset, for the whole 2006-2016 period. Overall: 34%.
Exits per yearEmployees with a termination date in that year. 2016 covers January to June only.
Pay rateAverage hourly pay rate in the group.
Hiring sourceThe "Employee Source" field, as recorded.

The same measures in Power BI

Employees = COUNTROWS ( Employees )

Employees Who Left =
CALCULATE ( [Employees],
    Employees[Employment Status] IN { "Voluntarily Terminated", "Terminated for Cause" } )

Turnover Rate = DIVIDE ( [Employees Who Left], [Employees] )
Cleaning

Small fixes, stated openly.

  • Trailing spaces. "Software Engineering " (with a space) appeared as a second department. Trimmed, so Software Engineering has 10 people, not 9 and 1.
  • Inconsistent case. One record says "male". Standardised to "Male".
  • Small groups. Executive Office has one person and Software Engineering ten. Their rates are shown but never used as the main finding.
  • A partial year. 2016 data ends in mid-year, so charts by year say so.
  • Targets. The dataset has no targets. Where a page shows one to demonstrate a card or gauge, it is labelled "Example target".

The same cleaning in Power Query

  1. Select the text columns, then Transform > Format > Trim.
  2. Select Sex, then Transform > Format > Capitalize Each Word.
How the charts were made

Drawn to match Power BI, and buildable in it.

The charts on this site are drawn as images so the pages load fast and work offline, but each one copies a standard Power BI visual: clustered bar and column, line, pie, donut, card, text box and list slicer. The "before" versions use Power BI's own defaults, including the default theme colours, auto-generated titles, legends, gridlines and two-decimal labels. The "after" versions use settings any Power BI user can change, and each page lists them under "In Power BI".

The accent colour is #2A78D6, with greys #C8C6C4 for context and #252423 for text. All type in the charts is Segoe UI, Power BI's default font.