r - 在包中使用 ggplot2 时,讨厌的 ggplot2 命名空间冲突

标签 r ggplot2 namespaces package cran

我正在为 qmethod 做贡献R 包,我刚刚写了一个函数来创建一堆 ggplot2对象。

该函数工作正常,但构建和 R CMD Check警告我:

replacing previous import by ‘ggplot2::%+%’ when loading ‘qmethod’

我看过SE posts和@hadley 的 book但无法弄清楚问题所在。

这是我的NAMESPACE的相关部分:
import("ggplot2",
   "stringr")
import("psych")
importFrom("plyr","count")
importFrom("reshape2","melt")
importFrom("digest", "digest")
importFrom("RColorBrewer", "brewer.pal")

这是我的 DESCRIPTION 的一部分:
Imports:
  digest,
  psych,
  knitr,
  RColorBrewer,
  stringr,
  ggplot2,
  plyr,
  reshape2

我在函数中调用 ggplot2 函数的部分 array.viz.R看起来像这样(以及更多):
g <- ggplot(
      data = array.viz.data
      ,aes(
        x = fsc  # factor scores, always same variable bc dataframe is constructed for every factor array by above loop
        ,y = ycoord  # just the random ycoord for viz
        ,ymax = max(ycoord)
        ,ymin = 0
        #,label = item.wrapped  # this for some reason causes an error
      )
    )
    g <- g + geom_tile(  # add background tiles
      aes(
        fill = item.sd
      )
    )

Ps.:你可以在这里找到整个当前的工作:https://github.com/maxheld83/qmethod/tree/array-viz

Pps.: 我知道 ggplot2本身导入了一堆我也导入的函数(例如 reshape2 ),所以我有一种预感,这可能是一个问题。

最佳答案

原来,import("psych")是违规包。

好像又要导出了ggplot::%+% ,虽然我想不出为什么会这样。

无论如何,修复是:

importFrom("psych", "principal")  # that's the function we were using

关于r - 在包中使用 ggplot2 时,讨厌的 ggplot2 命名空间冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28662289/

相关文章:

r - 使用 RPostgreSQL 的 UTF-8/Unicode 文本编码

r - 是否有 R 函数仅从具有许多 NA 值的逗号分隔字符串中提取数字以创建仅包含数字的列?

r - 如何更改数据框的名称

从 ggplot 图例中删除单个标签

r - ggplot中的ylab中的上标 “^oC”-

c++ - 在类方法内部访问类的命名空间之外?

r - 如何从 netcdf 文件中可视化 map ?

r - ggplot2:为没有重叠的组绘制误差线

ruby-on-rails - rails : How to handle associations among namespaced models?

php - 在 PHP 中使用命名空间扩展类时,我应该为类使用相同的名称吗?