Description Usage Arguments Value Author(s) Examples
Function to generate a color legend, the legend may be added to an existing plot or drawn in a separate plotting window.
| 1 2 3 4 5 6 7 8 9 10 11 | colorlegend (color = NULL, ncol = NULL, x = NULL, 
  breaks = NULL, pos = "center", shift = 0.02, side.legend = 1L, 
  side.ticks = 1L, range = NULL, lrange = NULL, 
  width = 0.4, height = 0.06, scale = TRUE, xlim = NULL, 
  ylim = NULL, plot = NULL, full = FALSE, add = FALSE, 
  col.border = "black", lty.border = 1L, lwd.border = 1L, 
  ticks = TRUE, at = NULL, col.ticks = "black", lwd.ticks = 1L, 
  lty.ticks = 1L, length.ticks = 0.3, labels = NULL, 
  distance.labels = 0.8, col.labels = "black", cex.labels = 1L, 
  digits = 2L, swap = FALSE, symmetric = TRUE, xpd = NULL,
  title = NULL, side.title = 2, shift.title = c(0, 0), ...)
 | 
| color | character, integer. The colors for the legend, may also be a function, e.g.
 | 
| ncol | integer, the number of different colors that should be generated if  | 
| x | numeric, values for which the color legend should be drawn. | 
| breaks | numeric, a set of breakpoints for the colors: must give one more breakpoint than 
 | 
| pos | character, numeric. The position of the legend. Either a numeric vector, e.g.
 | 
| shift | numeric, if argument  | 
| side.legend | integer, if set to  | 
| side.ticks | integer, if set to  | 
| range | numeric, specifies a range for  | 
| lrange | numeric, specifies the range of legend. | 
| width | numeric, the width of the legend, if  | 
| height | numeric, the height of the legend, if  | 
| scale | logical, if set to  | 
| xlim | numeric, the x-limits of the plotting window the legend should be added for, numeric
vector, e.g., returned from function  | 
| ylim | numeric, the y-limits of the plotting window the legend should be added for, numeric
vector, e.g., returned from function  | 
| plot | logical, if set to  | 
| full | logical, if set to  | 
| add | logical, if set to  | 
| col.border | the color of the surrounding border line of the legend. | 
| lty.border | the line type of the surrounding border line of the legend. | 
| lwd.border | the line width of the surrounding border line of the legend. | 
| ticks | logical, if set to  | 
| at | numeric, specifies at which locations ticks and labels should be added. | 
| col.ticks | the colors of the ticks. | 
| lwd.ticks | the line width of the ticks. | 
| lty.ticks | the line type of the ticks. | 
| length.ticks | numeric, the length of the ticks as percentage of the  | 
| labels | character, specifies labels that should be added to the ticks. | 
| distance.labels | numeric, the distance of the labels to the ticks, proportional to the length of the ticks. | 
| col.labels | the colors of the labels. | 
| cex.labels | text size of the labels. | 
| digits | integer, the decimal places if labels are numerical. | 
| swap | logical, if set to  | 
| symmetric | logical, if set to  | 
| xpd | sets the  | 
| title | character, a title for the legend. | 
| side.title | integer,  | 
| shift.title | numeric vector of length 2. Specifies a possible shift of the title in either x- or y-direction. | 
| ... | other graphical parameters to be passed to function  | 
A named list with the colors generated, the breaks and the function map, which may 
be used for mapping of x values to the colors specified in argument colors, please 
see the examples below.
Nikolaus Umlauf, Thomas Kneib, Stefan Lang, Achim Zeileis.
| 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 | ## play with colorlegend
colorlegend()
colorlegend(side.legend = 2)
colorlegend(side.legend = 2, side.ticks = 2)
colorlegend(height = 2)
colorlegend(width = 1, height = 0.8, scale = FALSE, 
  pos = c(0, 0.2), length.ticks = 0.5)
colorlegend(color = heat.colors, ncol = 9)
colorlegend(color = heat.colors, ncol = 9, swap = TRUE)
colorlegend(pos = "bottomleft")
colorlegend(pos = "topleft")
colorlegend(pos = "topright")
colorlegend(pos = "bottomright")
## take x values for the color legend
x <- runif(100, -2, 2)
colorlegend(color = diverge_hcl, x = x)
colorlegend(color = diverge_hcl, x = x, at = c(-1.5, 0, 1.5))
colorlegend(color = diverge_hcl, x = x, at = c(-1.5, 0, 1.5),
  labels = c("low", "middle", "high"))
colorlegend(color = rainbow_hcl, x = x, at = c(-1.5, 0, 1.5),
  labels = c("low", "middle", "high"), length.ticks = 1.5)
colorlegend(color = heat_hcl, x = x, at = c(-1.5, 0, 1.5),
  labels = c("low", "middle", "high"), length.ticks = 1.5,
  lwd.border = 2, lwd.ticks = 2, cex.labels = 1.5, font = 2)
colorlegend(color = topo.colors, x = x, at = c(-1.5, 0, 1.5),
  labels = c("low", "middle", "high"), length.ticks = 1.5,
  lwd.border = 2, lwd.ticks = 2, cex.labels = 1.5, font = 2,
  col.border = "green3", col.ticks = c(2, 5, 2), 
  col.labels = c(6, 4, 3))
colorlegend(color = diverge_hsv, x = x, at = c(-1.5, 0, 1.5),
  labels = c("low", "middle", "high"), length.ticks = 1.5,
  lwd.border = 2, lwd.ticks = 2, cex.labels = 1.5, font = 2,
  col.border = "green3", col.ticks = c(2, 5, 2), 
  col.labels = c(6, 4, 3), lty.border = 2, lty.ticks = c(2, 3, 2))
colorlegend(color = diverge_hsv, x = x, at = c(-1.5, 0, 1.5),
  labels = c("low", "middle", "high"), length.ticks = 1.5,
  lwd.border = 2, lwd.ticks = 2, cex.labels = 1.5, font = 2,
  col.border = "green3", col.ticks = c(2, 5, 2), 
  col.labels = c(6, 4, 3), lty.border = 2, lty.ticks = c(2, 3, 2),
  ncol = 3)
colorlegend(color = c("red", "white", "red"), x = x, at = c(-1.5, 0, 1.5),
  labels = c("low", "middle", "high"), length.ticks = 1.5,
  lwd.border = 2, lwd.ticks = 2, cex.labels = 1.5, font = 2,
  col.border = "green3", col.ticks = c(2, 5, 2), 
  col.labels = c(6, 4, 3), lty.border = 2, lty.ticks = c(2, 3, 2),
  ncol = 3, breaks = c(-2, -1, 1, 2))
colorlegend(color = diverge_hcl, x = x, range = c(-3, 3))
colorlegend(color = diverge_hcl, x = x, range = c(-3, 3), lrange = c(-6, 6))
## combine plot with color legend
n <- 100
x <- y <- seq(-3, 3, length.out = n)
z <- outer(sin(x), cos(x)) 
pal <- colorlegend(color = diverge_hcl, x = z, plot = FALSE)
op <- par(no.readonly = TRUE)
par(mar = c(4.1, 4.1, 1.1, 1.1))
layout(matrix(c(1, 2), nrow = 1), widths = c(1, 0.3))
image(x = x, y = y, z = z, col = pal$colors, breaks = pal$breaks)
par(mar = c(4.1, 0.1, 1.1, 3.1))
colorlegend(color = diverge_hcl, x = z, plot = TRUE, full = TRUE,
  side.legend = 2, side.ticks = 2)
par(op)
## another example with different plot
n <- 50
x <- sin(seq(-3, 3, length.out = n)) 
pal <- colorlegend(color = diverge_hcl, x = x, plot = FALSE)
op <- par(no.readonly = TRUE)
par(mar = c(7.1, 4.1, 1.1, 1.1))
barplot(x, border = "transparent", col = pal$map(x))
colorlegend(color = diverge_hcl, x = x, plot = FALSE, add = TRUE,
  xlim = c(0, 60), ylim = c(-1, 1), pos = c(0, -0.15), xpd = TRUE,
  scale = FALSE, width = 60, height = 0.15,
  at = seq(min(x), max(x), length.out = 9))
par(op)
 | 
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.