1

我正在编写一个小包,它使用 ggplot2 构建一些自定义类型的图形。自然地,我的源文件中会充斥着 ggplot2 函数。我对包开发有点陌生,我的理解是,通常最好::在包源中消除命名空间的歧义。但是把ggplot2::所有东西放在前面似乎是一个让我的代码混乱的好方法——我想让它尽可能地可读和清晰,以便我的同事也更容易处理我的代码。

有没有办法让我的源文件访问 ggplot2 命名空间?在包中使用library似乎是一个很大的禁忌。ggplot2将包描述中的“依赖”放在几乎可以做到这一点,但仅在我附加我的包时附加 ggplot2(如果我的包已加载但未附加,则会导致问题)。找到一种在我的包加载时自动附加ggplot2的方法可以解决这些问题,尽管直觉告诉我这可能是一种不好的做法。

4

1 回答 1

1

如此处所述,您可以在roxygen评论中执行此操作:

如果您正在使用另一个包中的许多功能,请使用 @import 包将它们全部导入并在不使用 :: 的情况下使其可用。

最好将其放在R/packagename-package.R具有其他标准 roxygen 标签的文件中,如下所示:

#' @docType package
#' @name packagename
#' @import ggplot2
NULL
于 2016-04-30T00:13:00.907 回答