Complex Data Visualisation Made Easy with R and ggplot2

CHI 2022 Course

This course ran online in May 2022. The information here is left for posterity.

When and where will it be?

The course will take place online. Unfortunately I have covid and have been unable to attend the conference in person. As the course is in two modules it takes place over two conference sessions:

  • 14.15-15.30 Wednesday the 4th of May, online
  • 16.15-17.30 Wednesday the 4th of May, online


The materials for the course have been made available. These are up-to-date, but it is likely I will find things that I want to tweak and improve ahead of the course. Therefore, what is taught may not be exactly what is listed in the materials when you look today.

How do I sign up?

Registration for CHI 2022 is now open. Courses cost USD$25 per unit. This is a two-unit course, so the total cost will be $50. There are no other costs associated with participation (e.g., software).

You can start or update your registration for the course (and the conference itself) by heading to the Cvent registration pages for CHI 2022.

If you’d like to register your interest so that I can contact you when the course is open for registrations, please do leave your name and email address on the form below. I will only use this information to contact you about the course.


Being able to visualize data in consistent high-quality ways is a useful skill for HCI researchers and practitioners. In this course, attendees will learn how to produce high quality plots and visualizations using the ggplot2 library for the R statistical computing language. There are no prerequisites and attendees will leave with scripts to get them started as well as foundational knowledge of free open-source tools that they can build on to produce complex, even interactive, visualizations.

There is more information about the course in the extended abstract, which is available as a PDF or as HTML.

Who is this course for?

Perhaps you are feeling a bit tired of Excel’s output? Think the SPSS output is a bit spartan? gpplot2 provides a declarative way of creating graphs. This means we can specify how data should be represented, and the library will construct the output based on what we tell it – without fiddling around with pixels to get things looking right. This means that you can:

  • Create visualizations you can quickly and easily reused
  • Have very fine-grained control over what appears and how it appears
  • Recreate your graphs in future and have them look exactly the same.

This sounds like programming…

You’ll be editing code, but it’s not really programming. I’ll provide you with templates and we’ll work through them, making simple changes. The way ggplot2 works means that small but predictable changes can have big effects on the visualisation you create. This means you can very quickly take templates and turn them into something that’s yours.

What do I need to bring?

Nothing, you just have to have a computer with a working browser. You don’t need to install any software, you just need to be able to get into the browser.

Who is teaching this course?

Sandy Gould

Sandy is an academic at the School of Computer Science and Informatics, Cardiff University. You can email him at

I am an experienced classroom practitioner who has made extensive use of ggplot2 in my publications and as the Analytics Chair for CHI 2018 and 2019. I’ve ran a version of this course previously, in 2019.

I have quite a lot of experience of running course at CHI, having previously run courses on research methods in 2015, 2016 and 2017.

Several of my plots made with ggplot2 can be seen in my publications as well as part of the CHI 2018, 2019 and 2020 blog posts.

You can email Sandy if you have any questions about this course: