scale_gradientn {ggplot2} | R Documentation |
Smooth gradient between n colours
scale_colour_gradientn(name=NULL, colours, values=NULL, rescale=TRUE, space="rgb", breaks=NULL, labels=NULL, limits=NULL, trans="identity", alpha=1, ...) scale_fill_gradientn(name=NULL, colours, values=NULL, rescale=TRUE, space="rgb", breaks=NULL, labels=NULL, limits=NULL, trans="identity", alpha=1, ...)
name |
name of scale to appear in legend or on axis. Maybe be an expression: see ?plotmath |
colours |
NULL |
values |
NULL |
rescale |
NULL |
space |
colour space to interpolate through, rgb or Lab, see ?colorRamp for details |
breaks |
numeric vector indicating where breaks should lie |
labels |
character vector giving labels associated with breaks |
limits |
numeric vector of length 2, giving the extent of the scale |
trans |
a transformer to use |
alpha |
alpha value to use for colours |
... |
other arguments |
This page describes scale_gradientn, see layer
and qplot
for how to create a complete plot from individual components.
A layer
Hadley Wickham, http://had.co.nz/
scale_gradient
: continuous colour scale with midpoint
colorRamp
: for details of interpolation algorithm
## Not run: # scale_colour_gradient make it easy to use existing colour palettes dsub <- subset(diamonds, x > 5 & x < 6 & y > 5 & y < 6) dsub$diff <- with(dsub, sqrt(abs(x-y))* sign(x-y)) (d <- qplot(x, y, data=dsub, colour=diff)) d + scale_colour_gradientn(colour = rainbow(7)) d + scale_colour_gradientn(colour = topo.colors(10)) d + scale_colour_gradientn(colour = terrain.colors(10)) # You can force them to be symmetric by supplying a vector of # values, and turning rescaling off max_val <- max(abs(dsub$diff)) values <- seq(-max_val, max_val, length = 11) d + scale_colour_gradientn(colours = topo.colors(10), values = values, rescale = FALSE) d + scale_colour_gradientn(colours = terrain.colors(10), values = values, rescale = FALSE) ## End(Not run)