【发布时间】:2015-10-01 10:51:09
【问题描述】:
我正在尝试针对一个序列绘制一个向量 y,它有 604800 个点:
x=seq(from=1, to=604800)。这不是问题,但我确实需要在地块上添加一条黄土曲线。
我已经使用ggplot2 尝试过,但这需要很长时间,而且在绘制大型数据集方面是出了名的糟糕。见 R 代码:
vf <- ggplot(single.prop, aes(x,y)) + geom_line(linetype=1, size=1)
vf <- vf + stat_smooth(method="loess",fullrange=TRUE,aes(outfit=fit1<<-..y..))
vf
我现在尝试使用 base 包,但这也需要很长时间:
lw <- loess(y ~ x,data=single.prop)
plot(y ~ x, data=single.prop,pch=19,cex=0.1)
k <- order(single.prop$x)
lines(single.prop$x[k],lw$fitted[k],col="red",lwd=3)
还有其他人对我可以做些什么来加快运行速度有任何建议吗?我必须多次这样做,到目前为止已经为一个情节等待了大约 15 分钟,但仍未完成。
【问题讨论】:
-
您在
ggplot中尝试过简单的stat_smooth(method="loess")。这需要时间,但似乎有效 -
是的,这是我原来的方法,按照上面的代码..
标签: r plot ggplot2 runtime loess