向 stat_smooth 添加偏移量
我正在处理一个数据集,我必须转换一些数据以进行曲线拟合。我使用 ggplot2 来绘制它,并且可以在转换后的数据上使用 stat_smooth 来获得拟合,但随后希望将结果覆盖在正确的数据点上。
作为一个玩具示例,假设我有
qplot(1:10, 1:10)+stat_smooth(formula=y+1~x, method="lm")
但我想将 stat_smooth 行向下移动 1(而不是从公式中取出 +1)。这可能吗?
I'm working with a dataset where I have to transform some data for a curve fit. I'm plotting it using ggplot2
, and can use stat_smooth
on the transformed data to get the fit, but then want to overlay the result on the correct datapoints.
As a toy example, let's say I had
qplot(1:10, 1:10)+stat_smooth(formula=y+1~x, method="lm")
But I want to shift the stat_smooth line down by one (other than by taking the +1 out of the formula). Is this possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我认为 10.5 年前提出这个问题时,
position_nudge()
不可用,但在一段时间以来它提供了一种更简单的方法来执行此操作(截至 ggplot 3.3.5,2021 年末)。似乎值得警告的是,在操作 stat_smooth() 的公式时,很可能会显示令人困惑或误导的置信区间。我在上面的行中为
qplot()
的输入添加了一些变化I don't think
position_nudge()
was available when this was asked 10.5 years ago but it's provided a simpler way of doing this for some time (as of ggplot 3.3.5, late 2021).It seems worth cautioning there's a good chance of displaying confusing or misleading confidence intervals when manipulating
stat_smooth()
's formula. I've added a bit of variation toqplot()
's input in the line above to illustrate this.有时事情可能非常明显:
如果您可以通过将 y 加 1 来将其提高 1,那么您可以通过从 y 中减去 1 来将其降低 1。 ;-)
Sometimes things can be very obvious :
If you can raise it 1 by adding 1 to y, you can lower it 1 by substracting 1 from y. ;-)