我有一个使用tmPlot
from 函数的包treemap
,但是当我尝试使用该函数时,它会抛出一个错误,即未加载其依赖项之一:
Error in tmPlot(data, index = index, vSize = vSize) :
could not find function "brewer.pal"
依赖项已安装并位于命名空间中。
这个问题有一点设置,是一个包问题,但我试图让它尽可能小:
确保您已安装treemap
(及其所有依赖项)。
我创建了一个名为“anRpackage”的目录。里面是一个文件夹('R')和一个包含以下文本的说明文件:
Package: anRpackage
Title: What the package does (short line)
Version: 1.0
Author: Who wrote it
Maintainer: Who to complain to <yourfault@somewhere.net>
Description: More about what it does (maybe more than one line)
License: What license is it under?
Imports:
treemap
Collate:
'maketree.R'
在 R/ 文件夹内有一个名为“maketree.R”的 R 文件。它的内容是:
#' maketree
#'
#' @importFrom treemap tmPlot
#' @export maketree
maketree <-
function(data, index, vSize){
tmPlot(data, index=index, vSize=vSize)
}
假设您位于“anRpackage”上方的目录中,请运行以下脚本:
library(roxygen2)
roxygenise("anRpackage/")
library(devtools)
build("anRpackage")
install("anRpackage")
重新启动 R(最好使用 --vanilla)并运行以下命令:
library(anRpackage)
data(mtcars)
maketree(mtcars, "cyl", "mpg")
你应该得到我一开始描述的错误。为什么会这样?RColorBrewer
被列为 Depends for treemap
,所以它应该是自动导入的,不是吗?