Blog

A blog about all things visualisation, data science, and open source software. Some of these blog posts can also be found on R-bloggers, and many have been featured in the R Weekly highlights.

Build your own TARDIS with D3

If you’re interested in learning more about D3.js and understanding how to build custom charts with it (or if you just like Doctor Who!), then this blog is for you! It’s a step-by-step guide to creating an interactive TARDIS from scratch with D3.

June 2, 2025

A step-by-step chart makeover

As part of the 30 Day Chart Challenge in April 2025, I made a (deliberately) bad chart, which didn’t follow any data visualisation best practices. In this blog post, we’ll go step-by-step through the process of making it better.

May 22, 2025

30 Day Chart Challenge 2025

The 30 Day Chart Challenge is a data visualisation challenge where participants create a chart for each daily prompt. In this blog post, I’ll recap the charts I made during the 2025 challenge and discuss the data and tools I used, alongside what I learned during the process.

May 1, 2025

Observable for R users

Observable is a JavaScript-based programming framework for data exploration and visualisation, which is popular for creating interactive charts and dashboards. This blog post demonstrates why and how R users can integrate Observable into their existing R workflows.

April 1, 2025

Creating data-driven art

If you’ve ever wondered what data-driven art is, or why people make it, then reading this blog post should help to answer those questions. It also includes an example of data-driven art, which can be created in Python or R, and talks through the process of getting started with your own art.

March 11, 2025

Designing monochrome data visualisations

In data visualisations, colours are often used to show values or categories of data. However, sometimes you might not be able to or want to use colour. This blog post discusses some tips for designing better visualisations when you’re restricted to a monochrome palette.

February 5, 2025