Palettes package:grDevices R Documentation _C_o_l_o_r _P_a_l_e_t_t_e_s _D_e_s_c_r_i_p_t_i_o_n: Create a vector of 'n' contiguous colors. _U_s_a_g_e: rainbow(n, s = 1, v = 1, start = 0, end = max(1,n - 1)/n, gamma = 1, alpha = 1) heat.colors(n, alpha = 1) terrain.colors(n, alpha = 1) topo.colors(n, alpha = 1) cm.colors(n, alpha = 1) _A_r_g_u_m_e_n_t_s: n: the number of colors (>= 1) to be in the palette. s,v: the 'saturation' and 'value' to be used to complete the HSV color descriptions. start: the (corrected) hue in [0,1] at which the rainbow begins. end: the (corrected) hue in [0,1] at which the rainbow ends. gamma: the gamma correction, see argument 'gamma' in 'hsv'. alpha: the alpha transparency, a number in [0,1], see argument 'alpha' in 'hsv'. _D_e_t_a_i_l_s: Conceptually, all of these functions actually use (parts of) a line cut out of the 3-dimensional color space, parametrized by 'hsv(h,s,v, gamma)', where 'gamma'=1 for the _foo_'.colors' function, and hence, equispaced hues in RGB space tend to cluster at the red, green and blue primaries. Some applications such as contouring require a palette of colors which do not wrap around to give a final color close to the starting one. With 'rainbow', the parameters 'start' and 'end' can be used to specify particular subranges of hues. The following values can be used when generating such a subrange: red=0, yellow=1/6, green=2/6, cyan=3/6, blue=4/6 and magenta=5/6. _V_a_l_u_e: A character vector, 'cv', of color names. 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'. _S_e_e _A_l_s_o: 'colors', 'palette', 'hsv', 'hcl', 'rgb', 'gray' and 'col2rgb' for translating to RGB numbers. _E_x_a_m_p_l_e_s: require(graphics) # A Color Wheel pie(rep(1,12), col=rainbow(12)) ##------ Some palettes ------------ demo.pal <- function(n, border = if (n<32) "light gray" else NA, main = paste("color palettes; n=",n), ch.col = c("rainbow(n, start=.7, end=.1)", "heat.colors(n)", "terrain.colors(n)", "topo.colors(n)", "cm.colors(n)")) { nt <- length(ch.col) i <- 1:n; j <- n / nt; d <- j/6; dy <- 2*d plot(i,i+d, type="n", yaxt="n", ylab="", main=main) for (k in 1:nt) { rect(i-.5, (k-1)*j+ dy, i+.4, k*j, col = eval(parse(text=ch.col[k])), border = border) text(2*j, k * j +dy/4, ch.col[k]) } } n <- if(.Device == "postscript") 64 else 16 # Since for screen, larger n may give color allocation problem demo.pal(n)