微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用ggplot2上的已知x截距拟合三阶多项式

如何解决用ggplot2上的已知x截距拟合三阶多项式

我正在尝试使用stat_smoth在ggplot2上拟合三阶多项式,但想强制回归线通过已知的x截距(以下可重现示例为35)。

示例:

x<-c(1,2,3,5,10,12,15,20,22,25,30,33,37)
y<-c(1000,800,100,1,0.3,0.25,0.2,0.1,0.03,0.05,0.03)
myformula<-y ~ poly(x,3)
ggplot(df,aes(x,y)) + stat_smooth(method = lm,formula = myformula) + geom_point() + 
stat_smooth(method = lm,formula = myformula) +
stat_poly_eq(formula = myformula,eq.with.lhs = "italic(psi)~`=`~",eq.x.rhs = "~italic(theta)",aes(label = paste(..eq.label..,..rr.label..,sep = "~~~~")),label.x=0.15,parse = TRUE)+ 
xlim(0,40)+  ylim(0,2000)+ 
scale_y_log10(breaks = c(0,1000),labels= c(0,1000))

enter image description here

当x截距为35时,如何获得最佳拟合回归线和方程式? 另外,如何使线接触x轴?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。