jak*_*kub 6 r operators ggplot2
如果提供的不是数字,+通常会抛出non-numeric argument to binary operator.但它适用于ggplot2,将情节粘贴在一起.同时,它在ggplot2的上下文之外保留其常用功能(例如,作为算术运算符或公式运算符),因此其ggplot2版本与这两者中的任何一个都不冲突.
我希望了解如何以+这种方式表现.浏览ggplot2 github repo,我找到了函数定义+.gg,%+%但它并没有让我更清楚.
我会很高兴指向ggplot2包中执行此操作的代码,或者对如何完成此操作的一般化解释.
如果你剖析+.gg我们有:
> ggplot2:::`+.gg`
function (e1, e2)
{
e2name <- deparse(substitute(e2))
if (is.theme(e1))
add_theme(e1, e2, e2name)
else if (is.ggplot(e1))
add_ggplot(e1, e2, e2name)
}
Run Code Online (Sandbox Code Playgroud)
此外,add_theme您感兴趣的是add_ggplot可以访问的内容ggplot2:::add_ggplot.后者 - 一个长期但非常有组织的功能 - 揭示了更多"级联"功能,以分发要添加的内容.
话虽这么说,R"知道"什么时候在类的对象上使用"+" gg才能应用(因为S3类).您可以在ggplot2GitHub repos中找到起点ggproto.R,我认为大多数ggplot2行为依赖于此.
这就是你要找的东西吗?
| 归档时间: |
|
| 查看次数: |
428 次 |
| 最近记录: |