It seems ironic writing about Valentine’s Day when my wife’s first words to me tonight were:

You aren’t getting a card tomorrow, I ran out of time

With my response:

Thank @%$* for that – I just forgot all about it!

But still, #MakeoverMonday this week focused on every card shops favourite day, and I thought I’d whip through a couple of quick takeaways – as a takeaway is likely the most romantic thing set to occur in my household tomorrow (and my wife will be out at yoga, so I’ll be sat all alone watching football).

My submission was a scatterplot with a corny use of hearts on the Shape Card. I’d get to revisit that trick when looking at Andy Kriebel’s submission. It wasn’t a difficult viz to rebuild, and I like tackling these simple looking ones now and then to give myself a bit of an ego boost. Struggling with tough vizzes is fine, but if I can’t nail these ones, them I’m in trouble.

The initial structure is basic, with the only deviation from standard stuff the grouping of anything other than “Significant Other / Spouse” into a separate group:

Screen Shot 2017-02-13 at 20.13.28.png

The first challenge is you create a second axis on which the first and last plotted points on each line are heart shapes. I have experience here, so I had a plan. Starts with creating a dual-axis, and setting the second axis to Shape, with an appropriate heart:

Screen Shot 2017-02-13 at 20.17.16.png

So pretty. But each data point is a heart, and we only need it to be the first or last point per line. That needs a simple boolean:

Screen Shot 2017-02-13 at 20.18.38.png

This calculation on Size on the secondary axis gives the right result:

Screen Shot 2017-02-13 at 20.19.42.png

Just labels to go, and I took the easy way out here. On the primary axis, I just labeled the start of each line and set the Font to Match Mark Colour:


For the secondary axis, I just highlighted the two end data points, and chose to “Always Show” those labels:

Screen Shot 2017-02-13 at 20.27.02.png

I could then add a standard table calculation to determine the % difference to the first value in the table:


And put that on the Label card too, and tweak formatting accordingly:


The hardest part was the labelling. When I looked at Andy’s workbook, he’d taken a much more future-proof and computational approach, as my half-assed method would come a cropper if additional Years of data were added. Here’s what Andy did:


That’s the label on the primary axis. See how it contains three separate calculations (you can just about see <AGG(Blank)>. Here are the three component parts:


This is a neat technique, as the colouring of the labels is done in the Label editor itself. The sneakiest part is the [Blank] calc which, when coloured white, forces spacing into the label to create some white space between the label and the data point.

The problem with my approach was at the End of the lines. How did Andy tackle that?

Screen Shot 2017-02-13 at 21.01.57.png

The second calculation is just the table calc used in my example. The first calculation is:

Screen Shot 2017-02-13 at 21.03.12.png

A simple and obvious thing to do, because it means that if you filter the Years, everything remains labeled as desired: