Walter and Lieth climate diagrams in R

Climate diagrams are useful tools which provide a visual summary of average climate conditions for a place over a specified period of time. This guide will explain the different parts of a Walter and Lieth climate diagram, and show you how to create one in R using the "iki.dataclim" package. This package provides a really quick and easy way to make good-looking Walter and Lieth climate diagrams. But, this guide will also show you how to create one from scratch (no packages needed!).

High resolution photos of Cedrus atlantica and Cedrus deodara pollen

Last year I published a paper on the pollen morphology of Cedrus atlantica (Atlas cedar) pollen. As part of this study I took several light microscope (LM) and scanning electron microscope (SEM) photos of the pollen grains.

Some of the photos were published as part of the paper which is available open access here:, although the photos were scaled down, and not all of them were published, including the ones for Cedrus deodara (Himalayan cedar).

A recent Twitter post talking about how researchers take loads of great photos, which are then scaled down for publishing inspired me to upload the originals.

So, I've now uploaded all the high resolution LM and SEM photos that were taken as part of this study, in their original and unedited form (.tif files) to Mendeley Data. You can find the photos here:

Please feel free to use the photos however you like!

Useful functions for manipulating text in R

R has some really cool little features to make life easier. A couple of really useful features for dealing with long text or character strings are abbreviate() and strtrim(). The first will automatically abbreviate character strings to a specified number of letters, and the second will trim a long character string to a specified number of letters. These functions can be really useful if you need to shorten text - for example, in plot axes or legends.
This quick guide will show you how to use both of these functions in R, and also take a look at paste() for further text manipulation.

Quick guide to annotating plots in R

R has powerful graphical capabilities, and its possible to create almost any kind of graph, chart or plot. It also has powerful annotation options, allowing you to write and draw all over your plot, using labels, shapes, highlighting, and more.

You might have previously created plots in R, and annotated them using a different graphic program (e.g. Photoshop, Corel Draw etc.). But, you could just do it all in R! This guide will show you some of the ways in which you can scribble on your plots, which can be useful for keeping notes, or to highlight certain features of your data...

Principal Components Analysis (PCA) in R - Part 2

In the second part of my guide for principal components analysis (PCA) in R, I additionally cover loadings plots, adding convex hulls to your biplots, more customisation options, and show you some more examples of PCA biplots created using R's base functionality...

Quick guide to pch symbols in R

R pch symbols

A quick guide to pch symbols in R, including: which symbols are available, how to use them in plots and how to style them by changing colours, size, and line widths.

A handy reference for pch!

Quick guide to line types (lty) in R

A quick guide to the different line types that are available to use in R, and how to use them. This guide will also show you how to create your own line type, and additionally covers line end styles (lend) and line join styles (ljoin).

A handy reference for lty, lend and ljoin!

Principal Components Analysis (PCA) in R

There is no shortage of ways to do principal components analysis (PCA) in R. Many packages offer functions for calculating and plotting PCA, with additional options not available in the base R installation. R offers two functions for doing PCA: princomp() and prcomp(), while plots can be visualised using the biplot() function. However, the plots produced by biplot() are often hard to read and the function lacks many of the options commonly available for customising plots.

This guide will show you how to do principal components analysis in R using prcomp(), and how to create beautiful looking biplots using R's base functionality, giving you total control over their appearance. I'll also show you how to add 95% confidence ellipses to the biplot using the "ellipse" package.

PhD thesis by publication: Thoughts and experiences

For anyone thinking about embarking on a PhD, or has recently started the journey, a common question that arises is what format will you choose to publish your thesis? Do you go down the "traditional" route, writing a monolithic piece of text, or opt for the "thesis by publication" route (also known as alternative format, or article thesis), where you publish journal articles "as you go".

What option you choose may ultimately result from what question you trying to answer, the subject you are doing, or by the options offered by your university. Your future career choice may also dictate the type of thesis you write. Thinking of an academic career? then "publish or perish" may sound familiar to you!

Having recently completed my PhD thesis by publication, I wanted to share my thoughts and experiences on this format. Admittedly, before I started my PhD, I hadn't even thought about the different options for the thesis, but it seemed like a no brainer to do it via publications. After all, no one will ever read it, right?

Pollen diagrams in R using rioja - Part 3

In the third part of this guide series, which looks at plotting pollen diagrams using the "rioja" package, I will show you how you can combine different plot styles into a single pollen diagram figure. Now, your pollen diagram (or other stratigraphic diagram) could consist of bar plots, line plots and/or silhouette plots, rather than just a single plot type...