我正在为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
我在函数array.viz.R
中调用ggplot2函数的部分看起来像这样(以及更多):
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
),所以我预感到这可能是个问题。
答案 0 :(得分:1)
事实证明,import("psych")
是违规行为。
它似乎以某种方式再次导出ggplot::%+%
,但我无法想到为什么会出现这种情况。
无论如何,修复是:
importFrom("psych", "principal") # that's the function we were using