Based on gray.colors(). This is black and white equivalent
of scale_colour_gradient().
Arguments
- name
- The name of the scale. Used as the axis or legend title. If - waiver(), the default, the name of the scale is taken from the first mapping used for that aesthetic. If- NULL, the legend title will be omitted.
- ...
- Arguments passed on to - discrete_scale- breaks
- One of: 
- limits
- One of: - NULLto use the default scale values
- A character vector that defines possible values of the scale and their order 
- A function that accepts the existing (automatic) values and returns new ones. Also accepts rlang lambda function notation. 
 
- drop
- Should unused factor levels be omitted from the scale? The default, - TRUE, uses the levels that appear in the data;- FALSEincludes the levels in the factor. Please note that to display every level in a legend, the layer should use- show.legend = TRUE.
- na.translate
- Unlike continuous scales, discrete scales can easily show missing values, and do so by default. If you want to remove missing values from a discrete scale, specify - na.translate = FALSE.
- minor_breaks
- One of: - NULLfor no minor breaks
- waiver()for the default breaks (none for discrete, one minor break between each major break for continuous)
- A numeric vector of positions 
- A function that given the limits returns a vector of minor breaks. Also accepts rlang lambda function notation. When the function has two arguments, it will be given the limits and major break positions. 
 
- labels
- One of the options below. Please note that when - labelsis a vector, it is highly recommended to also set the- breaksargument as a vector to protect against unintended mismatches.- NULLfor no labels
- waiver()for the default labels computed by the transformation object
- A character vector giving labels (must be same length as - breaks)
- An expression vector (must be the same length as breaks). See ?plotmath for details. 
- A function that takes the breaks as input and returns labels as output. Also accepts rlang lambda function notation. 
 
- guide
- A function used to create a guide or its name. See - guides()for more information.
- call
- The - callused to construct the scale for reporting messages.
- super
- The super class to use for the constructed scale 
 
- start
- grey value at low end of palette 
- end
- grey value at high end of palette 
- na.value
- Colour to use for missing values 
- aesthetics
- Character string or vector of character strings listing the name(s) of the aesthetic(s) that this scale works with. This can be useful, for example, to apply colour settings to the - colourand- fillaesthetics at the same time, via- aesthetics = c("colour", "fill").
See also
The documentation on colour aesthetics.
The hue and grey scales section of the online ggplot2 book.
Other colour scales:
scale_alpha(),
scale_colour_brewer(),
scale_colour_continuous(),
scale_colour_discrete(),
scale_colour_gradient(),
scale_colour_hue(),
scale_colour_identity(),
scale_colour_manual(),
scale_colour_steps(),
scale_colour_viridis_d()
Examples
p <- ggplot(mtcars, aes(mpg, wt)) + geom_point(aes(colour = factor(cyl)))
p + scale_colour_grey()
 p + scale_colour_grey(end = 0)
p + scale_colour_grey(end = 0)
 # You may want to turn off the pale grey background with this scale
p + scale_colour_grey() + theme_bw()
# You may want to turn off the pale grey background with this scale
p + scale_colour_grey() + theme_bw()
 # Colour of missing values is controlled with na.value:
miss <- factor(sample(c(NA, 1:5), nrow(mtcars), replace = TRUE))
ggplot(mtcars, aes(mpg, wt)) +
  geom_point(aes(colour = miss)) +
  scale_colour_grey()
# Colour of missing values is controlled with na.value:
miss <- factor(sample(c(NA, 1:5), nrow(mtcars), replace = TRUE))
ggplot(mtcars, aes(mpg, wt)) +
  geom_point(aes(colour = miss)) +
  scale_colour_grey()
 ggplot(mtcars, aes(mpg, wt)) +
  geom_point(aes(colour = miss)) +
  scale_colour_grey(na.value = "green")
ggplot(mtcars, aes(mpg, wt)) +
  geom_point(aes(colour = miss)) +
  scale_colour_grey(na.value = "green")
 
