Learn R Programming

khroma (version 1.10.0)

scale_tol_sequential: Paul Tol's Sequential Colour Schemes for ggplot2 and ggraph

Description

Provides sequential colour scales from Paul Tol's Colour Schemes.

Value

A continuous scale.

Arguments

...

Arguments passed to ggplot2::continuous_scale().

reverse

A logical scalar. Should the resulting vector of colors be reversed?

range

A length-two numeric vector specifying the fraction of the scheme's colour domain to keep.

aesthetics

A character string or vector of character strings listing the name(s) of the aesthetic(s) that this scale works with.

discrete

A logical scalar: should the colour scheme be used as a discrete scale? If TRUE, it is a departure from Paul Tol's recommendations and likely a very poor use of colour.

Interpolation

If more colors than defined are needed from a given scheme, the colour coordinates are linearly interpolated to provide a continuous version of the scheme, with the exception of the discrete rainbow scheme (see below).

Note that the default colour for NA can be overridden by passing a value to ggplot2::continuous_scale().

Rainbow colour scheme

As a general rule, ordered data should not be represented using a rainbow scheme. There are three main arguments against such use (Tol 2018):

  • The spectral order of visible light carries no inherent magnitude message.

  • Some bands of almost constant hue with sharp transitions between them, can be perceived as jumps in the data.

  • Colour-blind people have difficulty distinguishing some colours of the rainbow.

If such use cannot be avoided, Paul Tol's technical note provides two colour schemes that are reasonably clear in colour-blind vision. To remain colour-blind safe, these two schemes must comply with the following conditions:

discreterainbow

This scheme must not be interpolated.

smoothrainbow

This scheme does not have to be used over the full range.

Author

N. Frerebeau

Details

#'

PaletteMax. colorsNA value
YlOrBr9#888888
iridescent23#999999
discreterainbow23#777777
smoothrainbow34#666666

References

Tol, P. (2018). Colour Schemes. SRON. Technical Note No. SRON/EPS/TN/09-002, issue 3.1. URL: https://personal.sron.nl/~pault/data/colourschemes.pdf

See Also

Other colour-blind safe colour schemes: scale_crameri_cyclic, scale_crameri_diverging, scale_crameri_mutlisequential, scale_crameri_sequential, scale_okabeito_discrete, scale_tol_discrete, scale_tol_diverging

Examples

Run this code
data(faithfuld, package = "ggplot2")

ggplot2::ggplot(faithfuld, ggplot2::aes(waiting, eruptions, fill = density)) +
  ggplot2::geom_raster() +
  scale_fill_YlOrBr()

ggplot2::ggplot(faithfuld, ggplot2::aes(waiting, eruptions, fill = density)) +
  ggplot2::geom_raster() +
  scale_fill_iridescent(reverse = TRUE)

ggplot2::ggplot(faithfuld, ggplot2::aes(waiting, eruptions, fill = density)) +
  ggplot2::geom_raster() +
  scale_fill_smoothrainbow(range = c(0.25, 1))

Run the code above in your browser using DataLab