【发布时间】:2018-02-23 15:30:57
【问题描述】:
我正在构建一个有点复杂的图,并希望手动指定每个点的 alpha。我可以用scale_alpha_identity 做到这一点,到目前为止一切都很好。但现在我想为我的 alpha 比例添加一个图例。向scale_alpha_identity 添加指南似乎不起作用 - 我只是收到错误消息,即使我尝试按照文档建议添加中断和标签:http://ggplot2.tidyverse.org/reference/scale_identity.html。
最小的例子:这会产生我想要的情节,但没有图例。
ggplot(data = iris) +
geom_point(aes(x = Sepal.Length, y = Sepal.Width,
alpha = Petal.Length / max(Petal.Length))) +
scale_alpha_identity()
根据文档,我认为这可行,但它没有:
ggplot(data = iris) +
geom_point(aes(x = Sepal.Length, y = Sepal.Width,
alpha = Petal.Length / max(Petal.Length))) +
scale_alpha_identity(breaks = c(0, 1), labels = c(0, 1), guide = 'legend')
我还尝试了许多其他变体:将 'colorbar' 或 'legend' 直接传递给 guide 参数,带和不带中断和标签,传递 guide_legend 或 guide_colorbar 而不是字符串 - 不走运,只是不同的错误信息。按照Is there a way to add a legend for ggplot's alpha? 中的建议添加虚假比例对我不起作用,因为它会覆盖我的身份比例。
【问题讨论】: