2

我创建了具有特定于与我合作的不同公司的功能的便利包。当我加载这些库时,我希望能够加载 ggplot2 主题和 geom 默认值。

例如:

update_geom_defaults("line",   list(size = 2))
update_geom_defaults("bar",    list(fill="#BEBADA",colour="#000000"))
update_geom_defaults("text",   list(colour="#333333"))
scale_colour_discrete <- function(...) scale_colour_brewer(..., palette="Set2")
scale_fill_discrete <- function(...) scale_fill_brewer(... , palette="Set2")

现在,我必须记住每次进行快速分析时都要重新输入,我想让它更干。

当包加载时,我将如何强制这些元素加载?

伪代码:

library(convenience.lib)
## run the above ## 
4

1 回答 1

1

简单地将 .onLoad 函数添加到您的包中,例如:

.onLoad <- function(libname = find.package("mypackage"), pkgname = "mypackage") {
    update_geom_defaults("line",   list(size = 2))
    update_geom_defaults("bar",    list(fill="#BEBADA",colour="#000000"))
    update_geom_defaults("text",   list(colour="#333333"))
    scale_colour_discrete <- function(...) scale_colour_brewer(..., palette="Set2")
    scale_fill_discrete <- function(...) scale_fill_brewer(... , palette="Set2")
}
于 2013-04-21T05:30:16.010 回答