[英]Use named r color in rgb() so I can add alpha value
为了更轻松地测试复杂图中的颜色,我想使用命名颜色但指定 alpha。 我的第一个想法是使用col2rgb()
。 像这样的东西
rgb( col2rgb( "red" ), alpha=125, maxColorValue=255 )
但是 col2rgb() 的输出是一个矩阵。 我试过转置它,将其转换为字符等,但无法以rgb()
可以使用的形式获取它。 这很奇怪,因为它被称为col2rgb
。
情况比这更复杂,我在给颜色时必须指定alpha。
我们可以t
ranspose创建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"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.