R中的ggplot2:在geom_smooth行下面填充

时间:2016-05-21 03:20:42

标签: r ggplot2

我正在尝试填写geom_smooth()行下方的一部分地块。

示例:

An example of a fill under a curve.

在示例中,数据适合该曲线。我的数据并不那么顺利。我想使用geom_point()以及geom_smooth()geom_area()的混合来填充平滑线下的区域,同时留下上面的点。

我的数据图片geom_smooth()

Male points are blue, female points are red.

换句话说,我想要填写该行下的所有内容,如图1所示。

1 个答案:

答案 0 :(得分:4)

predict与正在使用的平滑类型一起使用。 geom_smooth使用loess代表n< 1000和gam用于n> 1000。

library(ggplot2)

ggplot(mpg, aes(displ, hwy)) +
    geom_point() +
    geom_smooth() +
    geom_ribbon(aes(ymin = 0,ymax = predict(loess(hwy ~ displ))),
                alpha = 0.3,fill = 'green')

给出了:

enter image description here