geom_smooth()有哪些可用的方法?


92

我正在使用geom_smooth()ggplot2

在Hadley Wickham的书(“ ggplot2-用于数据分析的优雅图形”)中,有一个示例(第51页)method="lm"被使用。在在线手册中,没有method论据。我看到有人在使用Google的其他结果(和此处的问题)method='loess'

是否有详尽的清单可以解释这些选项?

从我所看到的,'lm'画一条直线,'loess'画一条非常平滑的曲线。我假设还有其他人在参考点之间绘制了更多的锯齿线?

se示例中的参数也不在帮助或在线文档中。

FWIW这是我的代码。

p <- ggplot(output8, aes(age, myoutcome, group=id, colour=year_diag_cat2)) +
  geom_line() + scale_y_continuous(limits = c(lwr,upr))
p + geom_smooth(aes(group=year_diag_cat2), method="loess", size=2, se=F)


2
问题和答案已经过时。当前文档列出了参数:ggplot2.tidyverse.org/reference/geom_smooth.html
jan-glx

@StéphaneLaurent的链接已经移动(现在已经有5年了):stats.idre.ucla.edu/r/faq/…–
MokeEire

Answers:


38

有时是在问一个使答案跳出来的问题。方法和其他参数在ggplot2 wiki stat_smooth页面上列出。

geom_smooth()页面上暗指的是:

“如果需要一些更灵活的方法,请参见stat_smooth以获取使用内置模型拟合的示例,该示例向您展示了如何从您选择的任何模型中绘制拟合”。

这不是我第一次在ggplot图的示例中看到参数,但该函数并未专门列出。确实很难确定每个函数的范围,或者也许我还没有偶然发现一个神奇的显式列表,其中列出了在每个函数中将起作用和不起作用的内容。


4
是的,文档有点混乱。我不喜欢施普林格如何为哈德利的书收取40多美元的费用,其中包含网站上缺少的信息。
wespiserA 2011年

@wespiserA在什么意义上网站(或软件包帮助)中缺少信息?nzcoops的位置不对。这并不是说geom_smooth()无法改善帮助,例如,明确提及method并看到stat_smooth()-目前,这仅在示例中的注释中发生-可以肯定地说,给Hadley的一封礼貌的电子邮件会起作用奇迹。文档编写很困难,尤其是当您离代码很近的时候。作为开发人员,您不再是用户,并且会发现很难为用户编写文档。
加文·辛普森

1
@nzcoops未将其记录为参数的原因是geom_smooth()该函数没有或没有该参数。geom代码用于生成在打印时进行绘制的对象。ggplot中的约定是要有stat_foo()函数,甚至stat_identity()在您不想计算任何东西时都具有函数。就是说,哈德利欢迎对他的代码/程序包进行评论/批评,因此请丢下他和电子邮件,并建议在geom_文档及其相关文档之间建立更高的链接stat_
Gavin Simpson

2
@Gavin,是的,我过去曾多次发送电子邮件给Hadley,以为这个问题在这里仍然很有价值,因为毫无疑问我会在某个时候用谷歌搜索它。但是,您对“没有或没有该论点”的评论是错误的。是的 可以将其传递给stat_smooth(),但确实如示例所示将其“接受”。我也不想在我知道有人可以快速回答的问题上

23

method参数指定平滑统计量的参数。您可以查看stat_smooth方法参数的所有可能参数的列表。


厚脸皮的答案更改@wespiser:P我会让它通过;)
nzcoops 2011年

是的,您是第一次发现我的虚张声势。之后,我决定进行一些研究,找出正在发生的事情!
wespiserA 2011年

1

示例中的se参数也不在帮助或在线文档中。

当geom_smooth中的'se'设置为'FALSE'时,错误阴影区域不可见

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.