绘制单个 geom_smooth 曲线而不是多个

lew*_*x21 3 r categories ggplot2

我正在绘制一个包含 3 个不同类别的图表,这些类别由不同的颜色表示。我想要一条曲线来表示总数据的趋势,但是当我使用 geom_smooth 时,我得到了 3 条曲线,每个类别一条。我的代码是:

#plot the data
ggplot(data=transfer_data, aes(x=DATE_OF_TRANSFER, y=NUMBER_OF_TRANSFERS, colour = region)) + geom_point() + geom_smooth() + scale_colour_manual(values=c("green", "blue", "red", "orange")) 
Run Code Online (Sandbox Code Playgroud)

dmi*_*kno 6

有两种方法可以解决这个问题:1)覆盖 geom_smooth 层中的颜色 aestetic

   #plot the data
   ggplot(data=transfer_data, 
          mapping=aes(x=DATE_OF_TRANSFER, 
                      y=NUMBER_OF_TRANSFERS, 
                      colour = region)) + 
    geom_point() + 
    geom_smooth(color="black") + 
    scale_colour_manual(values=c("green", "blue", "red", "orange"))
Run Code Online (Sandbox Code Playgroud)

或 2) 仅将颜色 aestetic 移动到需要它的层

   #plot the data
   ggplot(data=transfer_data, 
          mapping=aes(x=DATE_OF_TRANSFER, 
                      y=NUMBER_OF_TRANSFERS)) + 
    geom_point(mapping=aes(colour = region)) + 
    geom_smooth() + 
    scale_colour_manual(values=c("green", "blue", "red", "orange"))
Run Code Online (Sandbox Code Playgroud)