我有一些数据,在一个因素水平上,存在显着的相关性。在另一个层面,没有。并排绘制这些很简单。使用stat_smooth向两个行添加一行,也很简单。但是,我不希望在两个方面之一中显示该行或其填充。有一个简单的方法吗?也许以某种方式为其中一条线的填充和颜色指定一个空白颜色?
答案 0 :(得分:33)
不要考虑选择一个方面,考虑将一部分数据提供给stat_smooth:
ggplot(df, aes(x, y)) +
geom_point() +
geom_smooth(data = subset(df, z =="a")) +
facet_wrap(~ z)
答案 1 :(得分:3)
当然,我后来回答了我自己的问题。虽然,有没有更少的黑客方式来做到这一点?我想知道是否有人可以在不同的面板上使用不同的功能。
一种技巧是使用+ scale_fill_manual和scale_colour_manual。它们允许指定将使用的颜色。所以,在这种情况下,假设你有
a<-qplot(x, y, facets=~z)+stat_smooth(method="lm", aes(colour=z, fill=z))
您可以使用以下方法指定填充和颜色的颜色。注意,第二种颜色是清晰的,因为它使用十六进制值,最后两个数字代表透明度。所以,00 =清楚。
a+stat_fill_manual(values=c("grey", "#11111100"))+scale_colour_manual(values=c("blue", "#11111100"))