Less smoothed line in ggplot2, alternatives to geom_smooth?

断了今生、忘了曾经 提交于 2019-12-08 19:16:47

问题


Using the following data:

> str(attribute)
'data.frame':   431 obs. of  2 variables:
 $ pos: int  1 2 3 4 5 6 7 8 9 10 ...
 $ att: num  0.652 0.733 0.815 1.079 0.885 ...   *[between 0 and 3]

and:

ggplot(attribute, aes(x=pos, y=att)) + geom_line() + geom_smooth()

I did:

I would like to progressively smooth the black curve, not "as much as" geom_smooth default did. I've tried n, level options, but didn't do what I want. Which would be the best way to increase smoothing progressively? (e.g. average 2 values in one, then try 3 in one, and so on). I guess it's something really easy or achievable without using geom_smooth, but I don't know what to search/look for. Thanks.


回答1:


This is documented in stat_smooth. The default smoother is loess, and additional arguments are passed on to it, as specified for the description of the ... argument. So what you want is span:

ggplot(mtcars,aes(x = wt,y = mpg)) + 
  geom_point() + 
  geom_smooth(span = 0.4)

Additionally, loess accepts a degree argument for more control over the amount of smoothing.



来源:https://stackoverflow.com/questions/29038520/less-smoothed-line-in-ggplot2-alternatives-to-geom-smooth

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!