R: RGB Color Specification

rgb {grDevices} | R Documentation

## RGB Color Specification

### Description

This function creates colors corresponding to the given intensities (between 0 and `max`) of the red, green and blue primaries.

An alpha transparency value can also be specified (0 means fully transparent and `max` means opaque). If `alpha` is not specified, an opaque colour is generated.

The names argument may be used to provide names for the colors.

The values returned by these functions can be used with a `col=` specification in graphics functions or in `par`.

### Usage

    rgb(red, green, blue, alpha, names = NULL, maxColorValue = 1)

### Arguments

`red, blue, green, alpha` | numeric vectors with values in [0, M] where M is `maxColorValue`. When this is `255`, the `red`, `blue`, `green`, and `alpha` values are coerced to integers in `0:255` and the result is computed most efficiently.
`names` | character. The names for the resulting vector.
`maxColorValue` | number giving the maximum of the color values range, see above.

### Details

The colors may be specified by passing a matrix or dataframe as argument `red`, and leaving `blue` and `green` missing. In this case the first three columns of `red` are taken to be the `red`, `green` and `blue` values.

Semi-transparent colors (`0 < alpha < 1`) are supported only on some devices: at the time of writing only on the `pdf`, `windows` and `quartz` devices as well as several third-party devices such as those in packages Cairo, cairoDevice, JavaGD and RSvgDevice. On most of these devices the actual alpha values used are multiples of 1/255.

Typically other graphics devices silently plot semi-transparent colors as fully transparent.

### Value

A character vector with elements of 7 or 9 characters, `"#"` followed by the red, blue, green and optionally alpha values in hexadecimal (after rescaling to `0 ... 255`).

### See Also

`col2rgb`for translating R colors to RGB vectors; `rainbow`, `hsv`, `hcl`, `gray`.

### Examples

    rgb(0,1,0)
    (u01 <- seq(0,1, length=11))
    stopifnot(rgb(u01,u01,u01) == gray(u01))
    reds <- rgb((0:15)/15, green=0, blue=0, names=paste("red",0:15,sep="."))
    reds

    rgb(0, 0:12, 0, max = 255)# integer input

    ramp <- colorRamp(c("red", "white"))
    rgb( ramp(seq(0, 1, length = 5)), max = 255)

[Package grDevices version 2.6.2 Index]