Learn R Programming

viridis (version 0.3.1)

viridis: Matplotlib 'viridis' color map

Description

This function creates a vector of n equally spaced colors along the Matplolib 'viridis' color map created by https://github.com/stefanv{Stéfan van der Walt} and https://github.com/njsmith{Nathaniel Smith}. This color map is designed in such a way that it will analytically be perfectly perceptually-uniform, both in regular form and also when converted to black-and-white. It is also designed to be perceived by readers with the most common form of color blindness.

Usage

viridis(n, alpha = 1, option = "D")

viridisMap(n = 256, alpha = 1, option = "D")

magma(n, alpha = 1)

inferno(n, alpha = 1)

plasma(n, alpha = 1)

Arguments

n
The number of colors ($\ge 1$) to be in the palette.
alpha
The alpha transparency, a number in [0,1], see argument alpha in hsv.
option
A character string indicating the colormap option to use. Four options are available: "magma" (or "A"), "inferno" (or "B"), "plasma" (or "C"), and "viridis" (or "D", the default option).

Value

  • viridis returns a character vector, cv, of color hex codes. This can be used either to create a user-defined color palette for subsequent graphics by palette(cv), a col = specification in graphics functions or in par.

    viridisMap returns a n lines data frame containing the red (R), green (G), blue (B) and alpha (alpha) channels of n equally spaced colors along the 'viridis' color map. n = 256 by default, which corresponds to the data from the original 'viridis' color map in Matplotlib.

Details

magma(), plasma(), and inferno() are convenience functions for the other colormap options, which are useful the scale must be passed as a function name.

Semi-transparent colors ($0 < alpha < 1$) are supported only on some devices: see rgb.

Examples

Run this code
library(ggplot2)
library(hexbin)

dat <- data.frame(x = rnorm(10000), y = rnorm(10000))

ggplot(dat, aes(x = x, y = y)) +
  geom_hex() + coord_fixed() +
  scale_fill_gradientn(colours = viridis(256, option = "D"))

# using code from RColorBrewer to demo the palette
n = 200
image(
  1:n, 1, as.matrix(1:n),
  col = viridis(n, option = "D"),
  xlab = "viridis n", ylab = "", xaxt = "n", yaxt = "n", bty = "n"
)

Run the code above in your browser using DataLab