R 黄土整平机按跨度参数绘制的面元图

R 黄土整平机按跨度参数绘制的面元图,r,ggplot2,smooth,loess,R,Ggplot2,Smooth,Loess,我想通过改变跨度参数,使黄土更加平滑,从而制作一个单面图(晶格样式)。我尝试使用下面的for循环,但没有生成任何绘图。如果我使用ggsave功能,则绘图将单独保存 此外,我想知道是否有更省钱的方法来完成这样的任务 x <- rep(1:10,4) y <- 1.2*x + rnorm(40,0,3) s <- seq(0.2,0.8,0.1) # plot the series of plots by varying the span parameter for (s_i i

我想通过改变跨度参数,使黄土更加平滑,从而制作一个单面图(晶格样式)。我尝试使用下面的for循环,但没有生成任何绘图。如果我使用ggsave功能,则绘图将单独保存

此外,我想知道是否有更省钱的方法来完成这样的任务

x <- rep(1:10,4)
y <- 1.2*x + rnorm(40,0,3)
s <- seq(0.2,0.8,0.1)

# plot the series of plots by varying the span parameter
for (s_i in s) {
    qplot(x, y, geom = 'c('point','smooth'), span = s_i)
}

x如果您显式地
打印
绘图(并去掉多余的
标记),您的方法将非常有效:

至于其他方法,我建议把你所有的情节都列在一个列表里

changing_span = list()
for (i in seq_along(s)) {
    changing_span[[i]] <- qplot(x, y, geom = c('point','smooth'), span = s[i]) +
        labs(title = paste("span:", s[i]))
}

您还可以通过向每个绘图添加具有跨度值的镶嵌条来模拟镶嵌。例如(使用
ggplot
而不是
qplot
):
lappy(s,函数(span){ggplot(data.frame(dat,span=paste0(“span=”,span)),aes(x,y))+geom_point()+geom_smooth(span=span)+facet_grid(.~span)
changing_span = list()
for (i in seq_along(s)) {
    changing_span[[i]] <- qplot(x, y, geom = c('point','smooth'), span = s[i]) +
        labs(title = paste("span:", s[i]))
}
library(gridExtra)
do.call(grid.arrange, changing_span)