當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R adjustcolor 方便地在一個或多個方向上調整顏色


R語言 adjustcolor 位於 grDevices 包(package)。

說明

通過 空間中一個或多個坐標上的 “turning knobs” 調整或修改顏色向量,通常是通過向上或向下縮放它們。

用法

adjustcolor(col, alpha.f = 1, red.f = 1, green.f = 1, blue.f = 1,
            offset = c(0, 0, 0, 0),
            transform = diag(c(red.f, green.f, blue.f, alpha.f)))

參數

col

顏色向量,采用 col2rgb() 接受的任何格式

alpha.f

修改不透明度 alpha 的因子;通常在 [0,1] 中

red.f , green.f , blue.f

分別修改顏色的 “red-”、“green-” 或 “blue-”ness 的因子。

offset

長度為 4 到偏移 x := c(r,g,b,alpha) 的數值向量,其中 xcol2rgb(col, alpha=TRUE) 縮放結果。

transform

應用於 x + offset 的 4x4 數字矩陣。

col 長度相同的顏色向量,實際上是 rgb() 的結果。

例子

## Illustrative examples :
opal <- palette("default")
stopifnot(identical(adjustcolor(1:8,       0.75),
                    adjustcolor(palette(), 0.75)))
cbind(palette(), adjustcolor(1:8, 0.75))

##  alpha = 1/2 * previous alpha --> opaque colors
x <- palette(adjustcolor(palette(), 0.5))

sines <- outer(1:20, 1:4, function(x, y) sin(x / 20 * pi * y))
matplot(sines, type = "b", pch = 21:23, col = 2:5, bg = 2:5,
        main = "Using an 'opaque ('translucent') color palette")

x. <- adjustcolor(x, offset = c(0.5, 0.5, 0.5, 0), # <- "more white"
                  transform = diag(c(.7, .7, .7, 0.6)))
cbind(x, x.)
op <- par(bg = adjustcolor("goldenrod", offset = -rep(.4, 4)), xpd = NA)
plot(0:9, 0:9, type = "n", axes = FALSE, xlab = "", ylab = "",
     main = "adjustcolor() -> translucent")
text(1:8, labels = paste0(x,"++"), col = x., cex = 8)
par(op)

## and

(M <- cbind( rbind( matrix(1/3, 3, 3), 0), c(0, 0, 0, 1)))
adjustcolor(x, transform = M)

## revert to previous palette: active
palette(opal)

也可以看看

rgbcol2rgb。對於更複雜的顏色結構:convertColor

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Adjust Colors in One or More Directions Conveniently。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。