The Fox News Technique – How NOT to Report the Truth in Qlik

You can do all sorts with charts, and people do.  They should quickly convey accurate and insightful trends but they can be abused – twisted or exaggerated to tell whatever story the developer wants.  They can also be mishandled by a well-meaning developer who has accidentally ticked the wrong option.

So where does Fox News fit into this?  Well, the right-leaning news channel has built itself a reputation for misleading its viewers.  Not just in the way the Daily Mail does in the UK, by hyperbolising  qualitative data (e.g. “Giant Spiders to Take Over the Country”), but by distorting quantitative data.  By removing zero from their chart Y-axis and purposefully leaving out axis markers their visualisations can make even the smallest difference seem huge – and that’s what fuels people’s fears.  The chart below is perfect example of this:

fox2

For a start, what are they even measuring?  Does “M” mean millions or months or miles?  The main issue, however, is that the difference between 101.7m and 108.6m is just 6.78% yet the difference in height between the bars suggests a difference of around a 300% by my reckoning.

Let’s look at how to avoid such mistakes in Qlik.  For this example I’m going to use some figures from the recent US election and load them in using an inline load (essentially loading data that I’ve created in the script rather than from a spreadsheet or database).

load *
Inline [
Candidate, Electoral Votes, Popular Votes, Target
Hillary Clinton, 232, 62523126, 270
Donald Trump, 306, 61201031, 270
]

In Qlik you can quickly represent this data in a bar char:

impartial

That seems fair enough doesn’t it?  Impartial at least.  By the way, if you’re not sure how to add a reference line they can be found in the presentation tab.  Just be aware that the expression you use to identify where it sits on the Y-axis will ignore your dimensions:

ref-lines

Now we’ll do it the Fox News way.  The two options highlighted in the picture below can be found in the axes tab.

forced-0

Two little tick boxes that can be the undoing of any chart.  90% of the time you’re going to want “Forced 0” to be ticked and “Hide Axis” to be unticked.  There are some circumstances in which you may want to do the opposite, like when creating a line chart with values shown over time where there are only subtle changes in the trend line, but whenever an axis is hidden the data points should be labelled to show the values instead.

This is what happens when you fiddle with those two tick boxes:

biased

It’s the same data as the previous chart but it’s telling a whole different story!  It’s exaggerated Trump’s victory and looks a lot more newsworthy.  That’s the Fox News way.  By no longer forcing the chart to start the axis at zero we’ve effectively zoomed in on the difference between the two bars and in doing so lost all perspective.

I’ve seen new and eager developers make this mistake when trying to deal with subtle differences between values.  If it’s vital that the difference be clear think about using value labels or even text boxes containing the values before removing zero from the axis.  You could also consider other chart types such as two separate gauges.  Here’s one for Hillary Clinton:

hillary-guage

The tricks to converting the standard Qlik gauge to the one above mostly lie in the presentation tab.  Make sure that you have no dimension and that your main expression is the same as the one in your Max box as per below (in this case the target number of electoral votes required).  Untick the Autowidth Segments option, set your segment 1 lower bound to zero and the segment 2 lower bound to an expression which will give you your score (in this case the number of electoral votes received).

fox-options

You can also play around with the cylinder thickness and angle  options to size and spin the gauge around.  I added some text to make it clear exactly what is being measured and what the values are.  I put the following expression into a text box and simply made the box colour transparent before placing it over the gauge.

=’Electoral votes ‘& sum({<Candidate={‘Hillary Clinton’}>} [Electoral Votes])&chr(10)&’Target ‘&
sum({<Candidate={‘Hillary Clinton’}>} Target)

So there you have it.  Some, hopefully, helpful tips on how to not accidentally tell the wrong story with your data…  Or have you just learnt how to make your company’s growth look better ahead of that big presentation???  I hope you won’t take the Fox News path.

 


2 thoughts on “The Fox News Technique – How NOT to Report the Truth in Qlik

Leave a comment