This help topic is for R version 2.9.0. For the current version of R, try https://stat.ethz.ch/R-manual/R-patched/library/grDevices/html/hsv.html
hsv {grDevices}R Documentation

HSV Color Specification

Description

Create a vector of colors from vectors specifying hue, saturation and value.

Usage

hsv(h = 1, s = 1, v = 1, gamma = 1, alpha)

Arguments

h, s, v

numeric vectors of values in the range [0,1] for ‘hue’, ‘saturation’ and ‘value’ to be combined to form a vector of colors. Values in shorter arguments are recycled.

gamma

a gamma-correction exponent, \gamma

alpha

numeric vector of values in the range [0,1] for alpha transparency channel (0 means transparent and 1 means opaque).

Details

Semi-transparent colors (0 < alpha < 1) are supported only on some devices: see rgb.

Value

This function creates a vector of colors corresponding to the given values in HSV space. The values returned by hsv can be used with a col= specification in graphics functions or in par.

Gamma correction

For each color, (r,g,b) in RGB space (with all values in [0,1]), the final color corresponds to (r^{\gamma}, g^{\gamma}, b^{\gamma}).

See Also

hcl for a perceptually based version of hsv(), rgb and rgb2hsv for RGB to HSV conversion; rainbow, gray.

Examples

require(graphics)

hsv(.5,.5,.5)

## Look at gamma effect:
n <- 20;  y <- -sin(3*pi*((1:n)-1/2)/n)
op <- par(mfrow=c(3,2),mar=rep(1.5,4))
for(gamma in c(.4, .6, .8, 1, 1.2, 1.5))
  plot(y, axes = FALSE, frame.plot = TRUE,
       xlab = "", ylab = "", pch = 21, cex = 30,
       bg = rainbow(n, start=.85, end=.1, gamma = gamma),
       main = paste("Red tones;  gamma=",format(gamma)))
par(op)

[Package grDevices version 2.9.0 ]