为了更轻松地测试复杂图中的颜色,我想使用命名颜色,但指定alpha。我首先想到的是使用col2rgb()
。像这样
rgb( col2rgb( "red" ), alpha=125, maxColorValue=255 )
但是col2rgb()的输出是一个矩阵。我尝试过将其转换,将其转换为字符等,但是无法以rgb()
可以使用的形式获取它。这很奇怪,因为它叫col2rgb
。
情况要比这复杂得多,并且在指定颜色时必须指定alpha。
我们可以t
随意创建一个3列,matrix
因为该col2rgb
列是matrix
具有row.names的单列,即
col2rgb( "red" )
# [,1]
#red 255
#green 0
#blue 0
t(col2rgb( "red" ))
# red green blue
#[1,] 255 0 0
并根据 ?rgb
可以通过将矩阵或数据框传递为红色作为参数,而缺少蓝色和绿色来指定颜色。在这种情况下,红色的前三列被视为红色,绿色和蓝色值。
因此,我们可以使用3列 matrix
rgb(t(col2rgb( "red" )), alpha=125, maxColorValue=255 )
#[1] "#FF00007D"
或作为 data.frame
rgb(as.data.frame(t(col2rgb( "red" ))), alpha=125, maxColorValue=255 )
#[1] "#FF00007D"
这与
rgb(red = 255, green = 0, blue = 0, alpha=125, maxColorValue=255 )
#[1] "#FF00007D"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句