从另一个包创建S3泛型的方法(ggplot2中的autoplot)

时间:2017-05-31 13:37:17

标签: r ggplot2

我似乎没有完全理解如何在我正在开发的R包中将方法添加到另一个包中的泛型函数。

我现在正尝试为ID 1 - Home ID 2 - HardSecure ID 3 - Services 中定义的autoplot.myobj通用方法创建方法autoplot,而不向DEPENDS添加ggplot2

对于NAMESPACE中的这一行:ggplot2,R CMD构建失败并带有

  

错误:加载命名空间时未找到自动映射

然后,如果我还添加S3method(autoplot,emfrail),则R CMD构建有效,但R CMD检查返回

  

错误:无法找到函数自动映射

所以我理解还必须导出从另一个包导入的泛型。然后,如果我还添加importFrom(ggplot2, autoplot),则R CMD构建工作,R CMD检查给出

  

警告:未记录的代码对象

这意味着我还必须记录export(autoplot),尽管已在autoplot中记录。然后我遵循了建议here,除了之前的所有内容之外,我还有NAMESPACE ggplot2

然后我在文档中添加了export(autoplot.emfrail) roxygen标记。然后R CMD构建和R CMD检查都工作。我看到的缺点是现在使用@rdname autoplot.emfrail?autoplot和我的包中都记录了该函数。

这是从另一个包制作通用的S3方法的最佳方法吗?

0 个答案:

没有答案