我正在编写一个小包,使用ggplot2构建一些自定义类型的图。当然,我的源文件将充斥着ggplot2函数。我对包开发有些新意,我的理解是,通常在包源中使用::
消除名称空间歧义更好。但是将ggplot2::
放在所有内容之前似乎是混淆我的代码的一个很好的方法 - 我希望尽可能让它变得可读和清晰,以便我的同事更容易处理我的代码
有没有办法让我的源文件访问ggplot2名称空间?在包中使用library
似乎是一个很大的禁忌。将ggplot2
置于"取决于"在包中描述几乎这样做,但只在我附加我的包时附加ggplot2(因此如果我的包被加载但没有附加会导致问题)。当我的软件包加载时,找到一种自动附加 ggplot2的方法可以解决这些问题,虽然直觉告诉我这可能是一种不好的做法。
答案 0 :(得分:1)
如上所述here,您可以在roxygen
评论中执行此操作:
如果您正在使用其他软件包中的许多函数,请使用@import软件包将它们全部导入,并且不使用::。
最好你把它放在R/packagename-package.R
文件中,它有其他标准的roxygen标签,如下所示:
#' @docType package
#' @name packagename
#' @import ggplot2
NULL