如何将 spline() 与 ggplot 一起使用?
我想使用样条线(y~x)来拟合我的数据,但我能找到的所有示例都使用带有平滑功能的样条线,例如 lm(y~ns(x), df=_)。
我想专门使用 spline() ,因为我使用它来进行我正在制作的图所表示的分析。
有没有一种简单的方法在 ggplot 中使用 spline() ?
我已经考虑过使用拟合线的黑客方法
geom_smooth(aes(x=(spline(y~x)$x, y=spline(y~x)$y))
,但我不想诉诸于此。
谢谢!
I would like to fit my data using spline(y~x) but all of the examples that I can find use a spline with smoothing, e.g. lm(y~ns(x), df=_).
I want to use spline()
specifically because I am using this to do the analysis represented by the plot that I am making.
Is there a simple way to use spline() in ggplot?
I have considered the hackish approach of fitting a line using
geom_smooth(aes(x=(spline(y~x)$x, y=spline(y~x)$y))
but I would prefer not to have to resort to this.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是你想要的吗?
is this what you want?
或者,使用 ggformula https://rdrr.io/cran /ggformula/man/geom_spline.html,您可以直接在
ggplot()
内调用ggformula::stat_spline()
。注意:OP 特别询问了有关使用
spline()
的问题。stat_spline() {ggformula}
调用smooth.spline() {stats}
,这可能与spline() {stats}
的实现不完全相同code> 但认为对其他人来说这可能仍然是一个有用的答案。Alternatively, with
ggformula
https://rdrr.io/cran/ggformula/man/geom_spline.html, you can callggformula::stat_spline()
directly withinggplot()
.Note: OP asked specifically about using
spline()
.stat_spline() {ggformula}
callssmooth.spline() {stats}
, which might not be exactly the same implementation asspline() {stats}
but think it may still be a useful answer here for others.