`ggtern`

is an extension to `ggplot2`

specifically for the plotting of ternary diagrams. Ternary diagrams plot three variables and they are commonly used within the fields of chemistry, petrology, mineralogy, metallurgy, materials-science, genetics and game-theory, among others. Whereas a simplex diagram is the general case for \(k\), in \(k+1\) dimensions, the ternary diagram is the specific case when \(k=2\) (producing \(k+1=3\) vertices).

Given some familiarity with the syntax of `ggplot2`

it is quite easy to produce publication quality ternary diagrams.

```
library(ggtern)
set.seed(1)
plot <- ggtern(data = data.frame(x = runif(100),
y = runif(100),
z = runif(100)),
aes(x, y, z))
plot + stat_density_tern(geom = 'polygon',
n = 200,
aes(fill = ..level..,
alpha = ..level..)) +
geom_point() +
theme_rgbw() +
labs(title = "Example Density/Contour Plot") +
scale_fill_gradient(low = "blue",high = "red") +
guides(color = "none", fill = "none", alpha = "none")
```

The example above is provided by Nicholas Hamilton and published on the webpage of the `ggtern`

package. Check out the webpage for more information and more examples of ternary diagrams using this great library.