Chapter 12 Chart types

12.1 Chart types: theory and methods

Naomi Robbins (2013), Creating More Effective Graphs, Chart House.

12.2 Bar charts (and their variants)

Andy Kirk (2019-07-19) Five Ways To…Present Bar Charts – first in a series of “Five Ways To…”

12.3 Box plots (a way to visualize distributions)

R package boxplot

Laura DeCicco, 2018-08-10, Exploring ggplot2 boxplots - Defining limits and adjusting style

Ron Pearson, 2011-01-29, Boxplots and Beyond – Part I (first in a multi-part series on various distribution plots)

12.4 Bump plot

A line chart that shows changes in ranking over time (not the absolute value).

12.5 Density plot

12.6 Dot plot (Cleveland dot plot, lollipop plot)

12.7 Dynamite plots

A.K.A. bar and line graphs. Don’t use them!

12.8 Eikosograms

an eikosogram is a picture of probability. It visually partitions a unit square into rectangular regions whose areas give the numerical values of various probabilities. The construction is such that each rectangular region is identified with the value of one or more categorical variates. R.W. Oldford

12.9 Flow visualizations

1. Circle plots

2. Sankey plots

Interactive flow visualization in R; Kyle Walker, 2016-06-26

How to Make a D3 Sankey diagram in R

12.10 Genealogical data {ggeneology}

12.12 Histograms

see also Mosaic (a.k.a. Marimekko) charts

Variable width column charts (in ggplot2)

Aran Lunzer and Amelia McNamara, What’s so hard about histograms?

12.13 Lexis diagrams

Tim RiffeEmail author, Jonas Schöley and Francisco Villavicencio (2017) “A unified framework of demographic time”, Genus: Journal of Population Sciences, 2017 73:7

12.14 Mosaic (a.k.a. Marimekko) charts

Mosaic plots are a variant of Histograms

Haley Jeppson and Heike Hofmann (2018-09-12) Mosaic plots with ggplot2

Hadley Wickham and Heike Hofmann, [“Product Plots”](Wickham and Hofmann 2011)

Mosaic or Marimekko charts (in {ggplot2})

Perceptual Edge, A Design Problem

Alberto Cairo (2019-07-09) A mosaic plot that exemplifies good design practices

12.15 Network graphs {DiagramR}

{DiagramR}: Graph and network visualization using tabular data in R

ggnet2: network visualization with ggplot2 – part of the GGally package

12.17 Raincloud plot

Micah Allen, 2018-03-15, Introducing Raincloud Plots!

RainCloudPlots – “Code and tutorials to visualise your data that is both beautiful and statistically valid”

David Zhao, 2019-09-02, The ultimate EDA visualization in R

12.18 Ridgeline plot

** ridgeline plots in R ** {ggridges}

{ggridges} package by Claus Wilke – CRAN page

Alex Whan, 2016-03-24, ggplot2 and Joy Division - at Incrutable Errors

Mauricio Vargas S., 2016-11-08, Joy Division’s Unknown PleasuRes - at R-Bloggers

Henrik Lindberg, Sports: Time of Day

** Unknown Pleasures **

The over of Joy Division’s debut album Unknown Pleasures (1979) is perhaps the most famous ridgeline plot.

12.19 Slopegraphs

A common visualization to show relative change between two time periods across different categories.

12.19.1 Theory and methods

Cole Nussbaumer Knaflic, 2015, Storytelling with Data, pp.47-49.

12.19.2 R

Kyle Walker, 2015-05-17, Global population change with a slopegraph in ggplot2 {slopegraph}


12.20 Ternary plots {ggtern}

ggtern - an extension to ggplot2 for plotting ternary diagrams.

12.21 Waffle plots {waffle}


CRAN page: waffle: Create Waffle Chart Visualizations in R

GitHub page: {waffle}( Make waffle (square pie) charts in R


Infographic-style charts using the R waffle package



Wickham, Hadley, and Heike Hofmann. 2011. “Product Plots.” IEEE Transactions on Visualization and Computer Graphics 17 (12): 2223–30.