安装2.15版本后,ggplot2中的alpha通道无法正常工作。

6

更新到R 2.15版本后,ggplot中的alpha通道似乎不再起作用。

plot(rnorm(100),rnorm(100),bg="#cc000055",pch=21)

功能完全正常,但是……

qplot(rnorm(100),rnorm(100),color="#cc000044")

不是这样的!此外,ggplot2包中的alpha()函数也不再被找到(我也尝试了ggplot2::alpha()。

这是已知的问题吗?我在网上没有找到任何相关信息...

谢谢!


尝试使用?alpha获取有关如何使用它的更多详细信息。这对我来说很有效:qplot(rnorm(100),rnorm(100),color="#cc000044", alpha=1/3)也许您需要更新您的ggplot2库? - Ben
qplot(rnorm(100),rnorm(100),color="#cc000044", alpha=1/3) 对我也有效,但 "#cc000044" 在更新前也可以使用。此外,alpha函数在调用alpha(c("blue", "red"), .3)后产生错误 Error: could not find function "alpha",这也在?alpha帮助中(底部的最后一个示例)提到了这个问题。 - user2503795
我正在使用ggplot2 0.9,我相信这是最新版本。 - user2503795
2
我现在看到alpha函数已经移动到了scales包中。所以,在library(scales)之后,alpha(c("blue", "red"), .3)可以工作,但是qplot(rnorm(100),rnorm(100),color="#cc000044")仍然不行。 - user2503795
1
您需要将颜色规范包装在 I() 中,否则它会将其视为因子级别并使用默认调色板的第一个颜色。 但这仍然无法解决alpha问题。 - James
2个回答

4
我可以使用R-2.15.0和ggplot2 0.9.0复制该问题。正如Ben所指出的,指定ggplot2中半透明度的标准方式是提供明确的alpha参数。您应该尝试在所有新的绘图代码中使用它。我认为可以通过颜色参数支持ggplot的旧版alpha规范。如果您对此有强烈的看法,请提交一个问题

谢谢!我会提交一个问题,并且刚刚在 Google 列表上发布了链接。这不仅是传统规范,而且还是颜色的标准 R 语法,我认为这是支持它的一个很好的理由... - user2503795

2

这点在上面的评论中有所提及,但如果你正在处理一些旧的ggplot代码时,在调用alpha()后R抛出了一个错误,那么你需要显式地将library(scales)加载到你的R环境中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接