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

时间:2014-10-01 09:47:14

标签: 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))

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

myplot + geom_line(aes(x=speed, y=exp(predict(lm(log(dist)~speed)))))

1 个答案:

答案 0 :(得分:6)

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

(myplot + geom_smooth(method = "glm", formula = y~x,
                      family = gaussian(link = 'log')))

enter image description here