我想在数据区域之外的ggplot2
数据的子集上对数据的线性拟合进行推断(以可视化推断的危险)。在下面的代码中,我想将1980-1990年框架内生成的线性拟合扩展到1990-2000年,这样我就可以为整个时间段添加完全拟合并显示差异:
set.seed(123)
frame <- data.frame(year = rep(1980:2000, 10), y = sample(1:1000, 210))
head(frame)
frame1 <- frame[frame$year %in% c(1980:1990),]
frame2 <- frame[frame$year %in% c(1980:2000),]
ggplot(frame1, aes(x = year, y = y)) + geom_point(shape = 1) + geom_smooth(method = lm) + xlim(1980, 2000)
ggplot(frame2, aes(x = year, y = y)) + geom_point(shape = 1) + geom_smooth(method = lm) + xlim(1980, 2000)
我是
ggplot2
的新手,所以无论如何如何从第一帧扩展线性拟合,然后添加数据,然后用另一种颜色进行新拟合将是很棒的。谢谢。 最佳答案
你可以试试
ggplot(frame2, aes(x = year, y = y)) +
geom_point(shape = 1) +
geom_smooth(method = lm, se=FALSE) +
geom_smooth(data=frame1, method = lm, fullrange=TRUE, se=FALSE, colour="red") +
xlim(1980, 2000)