NB. I was sent this book as a review copy.
I’m not an expert on the R programming language, but I have dabbled, which meant that while this book is perhaps aimed at slightly more advanced users (I’ve used it a half a dozen times for Coursera courses), I had enough to appreciate the value of this really lovely resource.
The book can be seen, I think, in two ways. One of the ways, which is the one which most interests me, is in explaining what it is that makes good data visualization captivating, clear and unambiguous. Interleaved in these ideas of aesthetics are the precisel methods to go about making such visualizations using the ggplot package in R.
The other way to look at the book is as a way to really get to grips with the advanced features of the ggplot package, which is taught via interesting examples of data visualization. The lessons are taught by very well thought out examples, each of which brings in some new conundrum for creating good visualization. The examples are discussed in terms of the potential pitfalls and benefits, of where they may give misleading visuals or of the potential for what can go right and wrong. Despite the fact that I am not an R practitioner, each of these examples provides clear lessons which anyone could take and port to any other programming language which offers advanced data visualization packages.
The first chapter is essentially language agnostic and gives the reader a clear insight into what mindset one should have whenever thinking about showing data. This chapter includes research on the effectiveness of different channels of data representation and can certainly be used as a clear guide when thinking about the problems of both small and big data visualizations. These questions are truly vital in an age with so much information, often being shown so badly, and so these ideas are ones which any student of a quantitative subject should both understand and take on board in their own practice.
The second chapter is a quick intro to R which means that even those with no R experience you could start at page 1 of this book and truly work through to the end without once being stumped as to what is going on. While this chapter doesn’t explain about the many strengths of R, it gives enough to get you through to all the visualization examples it discusses in later chapters.
From here the book moves on to the basics of plotting, and in doing so shows many of the important minutiae that must be taken into account when plotting complex data, from thinking about colour and point size and shape to the labelling and legending of good plots. Along the way it also gives good programming practice down to the ideas of how to think about naming files and images, and in the appendix gives guidance about good folder structure practice. These are ideas that I wish I’d been taught before I started naming files “projectwithalex3fileaboutcomafinalversionbsecondlastversion3Monday.nb”.
The following chapters are about the details, aesthetic and technical considerations, good coding practice and even some psychology about plots of every form imaginable, models (ie fitting, summarising or transforming data) and maps (in the geographical sense, which ggplot deals with very nicely). The last chapter is about the finishing touches one needs to think about when creating effective plots.
Overall, despite the fact that I don’t use this particular language, this will be a very useful resource whenever I am thinking about plotting my own data, which tends to come in many different forms and about many different subjects, and I think that anybody who does use R for data visualization, this will be an absolute must have.