forked from tidyverse/ggplot2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscale_gradient.Rd
119 lines (99 loc) · 3.9 KB
/
scale_gradient.Rd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
% Generated by roxygen2 (4.1.1): do not edit by hand
% Please edit documentation in R/scale-gradient.r, R/scale-gradient2.r, R/scale-gradientn.r, R/zxx.r
\name{scale_colour_gradient}
\alias{scale_color_continuous}
\alias{scale_color_gradient}
\alias{scale_color_gradient2}
\alias{scale_color_gradientn}
\alias{scale_colour_continuous}
\alias{scale_colour_gradient}
\alias{scale_colour_gradient2}
\alias{scale_colour_gradientn}
\alias{scale_fill_continuous}
\alias{scale_fill_gradient}
\alias{scale_fill_gradient2}
\alias{scale_fill_gradientn}
\title{Smooth gradient between two colours}
\usage{
scale_colour_gradient(..., low = "#132B43", high = "#56B1F7",
space = "Lab", na.value = "grey50", guide = "colourbar")
scale_fill_gradient(..., low = "#132B43", high = "#56B1F7", space = "Lab",
na.value = "grey50", guide = "colourbar")
scale_colour_gradient2(..., low = muted("red"), mid = "white",
high = muted("blue"), midpoint = 0, space = "Lab",
na.value = "grey50", guide = "colourbar")
scale_fill_gradient2(..., low = muted("red"), mid = "white",
high = muted("blue"), midpoint = 0, space = "Lab",
na.value = "grey50", guide = "colourbar")
scale_colour_gradientn(..., colours, values = NULL, space = "Lab",
na.value = "grey50", guide = "colourbar")
scale_fill_gradientn(..., colours, values = NULL, space = "Lab",
na.value = "grey50", guide = "colourbar")
}
\arguments{
\item{...}{Other arguments passed on to \code{\link{discrete_scale}}
to control name, limits, breaks, labels and so forth.}
\item{low,high}{Colours for low and high ends of the gradient.}
\item{space}{colour space in which to calculate gradient. Must be "Lab" -
other values are deprecated.}
\item{na.value}{Colour to use for missing values}
\item{guide}{Type of legend. Use \code{"colourbar"} for continuous
colour bar, or \code{"legend"} for discrete colour legend.}
\item{mid}{colour for mid point}
\item{midpoint}{The midpoint (in data value) of the diverging scale.
Defaults to 0.}
\item{colours}{Vector of colours to use for n-colour gradient.}
\item{values}{if colours should not be evenly positioned along the gradient
this vector gives the position (between 0 and 1) for each colour in the
\code{colours} vector. See \code{\link{rescale}} for a convience function
to map an arbitrary range to between 0 and 1.}
}
\description{
\code{scale_*_gradient} creates a two colour gradient (low-high),
\code{scale_*_gradient2} creates a diverging colour gradient (low-mid-high),
\code{scale_*_gradientn} creats a n-colour gradient.
}
\details{
Default colours are generated with \pkg{munsell} and
\code{mnsl(c("2.5PB 2/4", "2.5PB 7/10")}. Generally, for continuous
colour scales you want to keep hue constant, but vary chroma and
luminance. The \pkg{munsell} package makes this easy to do using the
Munsell colour system.
}
\examples{
df <- data.frame(
x = runif(100),
y = runif(100),
z1 = rnorm(100),
z2 = abs(rnorm(100))
)
# Default colour scale colours from light blue to dark blue
ggplot(df, aes(x, y)) +
geom_point(aes(colour = z2))
# For diverging colour scales use gradient2
ggplot(df, aes(x, y)) +
geom_point(aes(colour = z1)) +
scale_colour_gradient2()
# Use your own colour scale with gradientn
ggplot(df, aes(x, y)) +
geom_point(aes(colour = z1)) +
scale_colour_gradientn(colours = terrain.colors(10))
# Equivalent fill scales do the same job for the fill aesthetic
ggplot(faithfuld, aes(waiting, eruptions)) +
geom_raster(aes(fill = density)) +
scale_fill_gradientn(colours = terrain.colors(10))
# Adjust colour choices with low and high
ggplot(df, aes(x, y)) +
geom_point(aes(colour = z2)) +
scale_colour_gradient(low = "white", high = "black")
# Avoid red-green colour contrasts because ~10\% of men have difficulty
# seeing them
}
\seealso{
\code{\link[scales]{seq_gradient_pal}} for details on underlying
palette
Other colour scales:
\code{\link{scale_colour_brewer}},
\code{\link{scale_colour_grey}},
\code{\link{scale_colour_hue}}
}