当一个变量被分解时,ggplot2中的Qplot会导致多个回归线

Max*_*don 2 r ggplot2

当我做一个简单的qplot()我想要一个回归线的情节.我如何告诉stat_smooth忽略这些因素?

这是我的示例代码:

library("ggplot2")
qplot(y=wt, x=mpg, size=cyl, col=factor(gear), data=mtcars) +
    stat_smooth(method=lm, formula=y~x)
Run Code Online (Sandbox Code Playgroud)

这给了这个图像:

一条考虑顺畅的线条

当我删除因子时,我得到了我想要的图形(虽然我无法删除真实数据集中的因子):

qplot(y=wt, x=mpg, size=cyl, col=gear, data=mtcars) +
    stat_smooth(method=lm, formula=y~x)
Run Code Online (Sandbox Code Playgroud)

一个合适的形象

Vin*_*ynd 8

您可以将平滑点(通过循环和齿轮因子进行分组)与平滑点分开(您只需要x和y美学,而不需要其他任何东西).

ggplot( mtcars, aes( y=wt, x=mpg ) ) + 
  geom_point( aes(size=cyl, colour=factor(gear)) ) +
  stat_smooth( method="lm" )
Run Code Online (Sandbox Code Playgroud)

或者,如果你有很多geom并希望从一个geom中删除默认美学:

ggplot( mtcars, aes( y=wt, x=mpg, size=cyl, colour=factor(gear)) ) + 
  geom_point() +
  stat_smooth(method="lm", aes(size = NULL, colour = NULL))
Run Code Online (Sandbox Code Playgroud)