将geom_smooth与变换后的y一起使用

Jer*_*oen 6 r ggplot2

geom_smooth当y公式中的变量被转换时,有没有办法使用?例如:

#This works:
 myplot <- qplot(speed, dist, data=cars)
(myplot + geom_smooth(method="lm", formula=y~log(x)))

#does not work
(myplot + geom_smooth(method="lm", formula=log(y)~x))
Run Code Online (Sandbox Code Playgroud)

我所追求的是这样一条线:

myplot + geom_line(aes(x=speed, y=exp(predict(lm(log(dist)~speed)))))
Run Code Online (Sandbox Code Playgroud)

mne*_*nel 6

您可以为高斯(正态分布)数据和日志链接拟合GLM.这将允许stat_smooth使用并返回适当的预测

(myplot + geom_smooth(method = "glm", formula = y~x,
                      family = gaussian(link = 'log')))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述