0
我试图用alpha
转换为col
论点plot
功能。我该怎么做,而不必为each_color
编写col=alpha(each_color,.5)
。应用透明的颜色矢量绘图功能
有没有办法向量化呢?
这里是重复的例子:
set.seed(10)
mydata <- rnorm(100)
mycol <-c("#FDF6E3", "#B3E2CD", "#FDCDAC", "#CBD5E8", "#F4CAE4", "#E6F5C9", "#FFF2AE", "#F1E2CC", "#CCCCCC")
par(bg='gray30')
plot(mydata,col=mycol,pch=19,cex=3)
mycol_alpha <- paste0('alpha(\'',mycol,'\',.5)')
par(bg='white')
是否有直接或通过一些其他的方式适用于mycol_alpha
功能plot
的方式?
更新:
This一个有解决方案。我的错误,我认为阿尔法function
是在基地R
。 我们需要library(scales)
解决方案:由@Robert指出
set.seed(10)
mydata <- rnorm(100)
mycol <-c("#FDF6E3", "#B3E2CD", "#FDCDAC", "#CBD5E8", "#F4CAE4", "#E6F5C9", "#FFF2AE", "#F1E2CC", "#CCCCCC")
par(bg='gray30')
plot(mydata,col=scales::alpha(mycol,.5),pch=19,cex=3)
我不这么认为,但你却拼错了'alpha'为'aphla' ...你仍然可以看到的透明度?另外,你已经使用'paste0' *是矢量化的。 –
我不完全确定问题是什么。我假设'alpha'是一个自定义函数。它没有被矢量化?为什么不?可以通过编写Vectorize(alpha)来进行矢量化吗? –
尝试'grDevices :: adjustcolor'为基础的解决方案 – baptiste