0
我的数据有3个因子水平,每个因子水平都有一个x和y坐标。我使用ggplot来创建散点图,我想添加一个平滑图。但是,我希望平滑仅使用3个因子水平中的2个。结果应该是这两个因子水平的数据点的单一拟合,但是所有3个水平都是分散的。ggplot合并stat_smooth R中的某些因子水平
例子:
library(ggplot2)
set.seed(123)
data <- data.frame(x=rnorm(300), y=rnorm(300), f=rep(c("a","b","c"), 100))
ggplot(data, aes(x,y,color=f)) +
geom_point() +
stat_smooth(method="gam", formula=y~s(x), se=F)
ggplot(data[data$f %in% c("a","b"),], aes(x,y)) +
geom_point(aes(color=f)) +
stat_smooth(method="gam", formula=y~s(x), se=F)
正如你所看到的,第一图像具有单独的因素润滑肌肤。第二个结合因子级别“a”和“b”的数据,但那是因为我已经从数据中删除了“c”。
如何保留第一张图片的散点图并覆盖第二张图片的平滑贴图?
非常好。正是我在找的东西。谢谢。 – Geoffrey