I suggest to add a new function to create a vector of n ``contiguous'' colors with tails in two colors. This function is similar to `cm.colors' but the colors can be choosen by hsv values.
This function could be used e.g. as alternative to the default ``col.regions'' in `levelplot'. Perhaps the arguments in the following code could be simplified. Wolfram Fischer #--- twotailed.colors.R twotailed.colors <- function( n = 7 # number of colors to be in the palette , n5 = n %% 2 # number of colors between the two tails , h1 = 0.02 # 0|1 = rot , h2 = 0.15 # 0.7 = blau, 0.15 = samtgelb, 0.35 = grün , s0 = 1 # saturation: begin and end , s5 = 1/n*1.4 # saturation: in the middle , v0 = 1 # value: begin and end , v5 = 1 # value: in the middle , s01 = s0 # beginning saturation of first tail , s02 = s0 # ending saturation of second tail , s51 = s5 # middle saturation on of first tail , s52 = s5 # middle saturation on of second tail , v01 = v0 # beginning value of first tail , v02 = v0 # ending value of second tail , v51 = v5 # middle value on of first tail , v52 = v5 # middle value on of second tail , n.tail = ( n - n5 ) %/% 2 # number of colors in each tail , s1 = seq( s01, s51, length = n.tail ) , s2 = seq( s52, s02, length = n.tail ) , v1 = seq( v01, v51, length = n.tail ) , v2 = seq( v52, v02, length = n.tail ) ){ c( hsv( h1, s1, v1 ) , rep( hsv( h1, round(s5,0), v5 ), n5 ) , hsv( h2, s2, v2 ) ) } #--- twotailed.colors.Rd \name{twotailed.colors} \alias{twotailed.colors} \title{Two tailed color palette} \description{ Create a vector of \code{n} ``contiguous'' colors with tails in two colors. } \usage{ twotailed.colors( n = 7, n5 = n %% 2, h1 = 0.02, h2 = 0.15 , s0 = 1, s5 = 1/n*1.4, v0 = 1, v5 = 1 , s01 = s0, s02 = s0, s51 = s5, s52 = s5 , v01 = v0, v02 = v0, v51 = v5, v52 = v5 , n.tail = ( n - n5 ) %/% 2 , s1 = seq( s01, s51, length = n.tail ) , s2 = seq( s52, s02, length = n.tail ) , v1 = seq( v01, v51, length = n.tail ) , v2 = seq( v52, v02, length = n.tail ) ) } \arguments{ \item{n}{ number of colors to be in the palette.} \item{n5}{ number of colors between the two tails.} \item{h1,h2}{values in the range \code{[0,1]} for the ``hue'' of the color of each tail, e.g.: 0 for red, 0.15 for yellow, 0.35 for green, 0.7 for blue.} \item{s0}{ saturation: begin and end.} \item{s5}{ saturation: in the middle.} \item{v0}{ value: begin and end.} \item{v5}{ value: in the middle.} \item{s01}{ beginning saturation of the first tail.} \item{s02}{ ending saturation of the second tail.} \item{s51,s52}{ middle saturation on of the first and the second tail.} \item{v01}{ beginning value of the first tail.} \item{v02}{ ending value of the second tail.} \item{v51,v52}{ middle value on of the first and the second tail.} \item{n.tail}{ number of colors in each tail.} \item{s1,s2}{ vector of saturations of first and the second tail.} \item{v1,v2}{ vector of values of the first and the tail.} } \details{ } \value{A character vector, \code{cv}, of color names. This can be used either to create a user--defined color palette for subsequent graphics by \code{\link{palette}(cv)}, a \code{col=} specification in graphics functions or in \code{par}. } \seealso{ \code{\link{cm.colors}}, \code{\link{colors}}, \code{\link{palette}}, \code{\link{hsv}}, \code{\link{rgb}}, \code{\link{gray}} and \code{\link{col2rgb}} for translating to RGB numbers. } \author{ Wolfram Fischer } \examples{ twotailed.colors(12) twotailed.colors(24,12) showcolors( twotailed.colors(24,12) ) } \keyword{color} \keyword{dplot} #--- ______________________________________________ [EMAIL PROTECTED] mailing list http://www.stat.math.ethz.ch/mailman/listinfo/r-devel