tmPlot 在命名空间中,但未找到其依赖项

2023-11-23

我有一个使用的包tmPlot函数来自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 <[email protected]>
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被列为取决于treemap,所以它应该是自动导入的,不是吗?


问题确实出在树形图上。treemap uses brewer.pal,所以应该Imports: RColorBrewer and importFrom(RColorBrewer, brewer.pal).

就目前而言,如果用户说一切都好library(treemap)、树形图和 RColorBrewer 附加到search()路径,以及何时tmPlot被评估brewer.pal在搜索路径上找到。当然,如果用户说,包装就会破裂brewer.pal="yeast"或者其他什么,因为会发现错误的符号;这是名称空间的原因之一,旨在保护树形图的功能免受用户可能执行的操作的影响。

但是,当您(正确地)导入:树形图时会发生什么?树形图已加载(到内存中),但树形图及其依赖项均未附加(到搜索路径)。所以brewer.pal没有找到。

如果树图是 Imports: RColorBrewer,那么当通过调用将树图附加到搜索路径时,都会找到brewer.pallibrary(treemap),并且仅导入到您的包中时。

联系树状图的维护者并要求他们更仔细地构建他们的名称空间。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

tmPlot 在命名空间中,但未找到其依赖项 的相关文章

  • 将缺失的行添加到数据表中

    我有一个数据表 library data table f lt data table id1 c 1 2 3 1 2 3 id2 as factor c a a b c b d v 1 6 key c id1 id2 id1 id2 v 1
  • 聚合时间

    我的数据包含 1 分钟测量值 我希望将其聚合为 5 分钟和 10 分钟 如何在 10 分钟内将 日 列的数据分组为 5 样本数据2 structure list Day c Monday Monday Monday Monday Monda
  • dplyr:取消选择由给出的列

    如何取消选择中给出的列 自写函数的参数 我还需要在另一点选择列 因此只需使用 in 没有解决我的问题 任何解决方案表示赞赏 select 帮助者 操纵者quosures或表达方式 very simple example data test
  • 使用shinyjs通过javascript在闪亮的应用程序中操作现有的Leaflet地图

    我有一个闪亮的应用程序 其中包含现有的传单地图 我希望能够在渲染后使用自定义 javascript 通过shinyjs包裹 一个最小的例子如下 app R packages library dplyr library leaflet lib
  • 基于列重复数据集中的行,但增加行[重复]

    这个问题在这里已经有答案了 我有一个数据集 其中包含项目名称 开始年份和合同期限 我需要将这个数据集开发成时间序列 例如 我的数据集中的一行是 项目 A 开始年份 2003 年 合同期限 5 我想根据合同期限重复每一行 我的数据集如下所示
  • magrittr 管道中的 WOE

    如何将下面的证据代码权重放入 magrittr 管道中 df gt 我尝试过的一切似乎都不起作用 df library Information library magrittr df a c aa bb cc aa aa aa bb cc
  • 有什么方法可以访问 makeActiveBinding 安装的函数吗?

    标题基本上说明了一切 如果我这样做 makeActiveBinding x function runif 2 GlobalEnv x 1 0 7332872 0 4707796 x 1 0 5500310 0 5013099 那我有什么办法
  • 拆分并保存在新的 data.frames 中

    我有一个大 data frame 144 列 我想将其分成每组 3 列 子文件或子 data frame 然后将子 data frame 保存在单独的文件中 换句话说 file1 将包含从 1 到 3 的列 file2 将包含从 6 到 9
  • dplyr::mutate 添加多个值

    网上有几个与此相关的问题dplyr Github 存储库 https github com hadley dplyr已经 并且至少有一个相关的问题 但没有一个问题完全涵盖了我的问题 我认为 在 dplyr mutate 调用中添加多列 ht
  • 在 R 中查找 Windows 用户名

    有没有办法在 R 会话中获取当前的 Windows 用户名或 Windows 主目录 Thanks 抱歉 如果我错过了什么 但我找不到任何东西 你可以做 Sys getenv USERNAME Sys getenv HOME 如果你只是输入
  • 如何在 R 中更新和重新编译 nlme 源代码

    我正在尝试更新 nlme 包 以便我可以在 gls 命令中使用大圆距离进行相关性 我正在尝试使用指定的更改来编辑源代码here http r 789695 n4 nabble com nlme spatial autocorrelation
  • 列表列表中出现的频率

    我有一个列表列表 其中每个列表都已排序 我想调查的是某个元素在特定位置出现了多少次 例如 pnc 曾两次出现在第二位 一次出现在第三位 我的数据结构如下 dput degree l list c schwab 0 pnc 0 0344827
  • Winforms 中的可视化树形图

    是否有用于在 C 2 0 WinForms 中构建方形树形图的框架 与此类似的东西 from http www codeproject com KB recipes treemaps aspx http www codeproject co
  • R 中自定义函数的等高线图

    我正在使用一些自定义函数 我需要根据参数的多个值为它们绘制轮廓 这是一个示例函数 我需要画这样的等高线图 任何想法 Thanks 首先你构造一个函数 fourvar它将这四个参数作为参数 在这种情况下 您可以使用 3 个变量来完成此操作 其
  • 重叠并固定小平面中的 x 尺度(尺度=“自由”)以制作电影

    在另一篇文章中 Justin 的帮助下 我用以下方法绘制了模拟结果facet gridggplot2 中的选项 包含数据和答案的帖子在这里 使用facet grid选项通过ggplot2绘制数据框的列 https stackoverflow
  • 基于多列重新编码数据框列[重复]

    这个问题在这里已经有答案了 如何根据其他列的值重新编码列 假设我有以下数据框 我想重新编码df Col3使得该值为 0 如果df Col1 x and df Col2 a gt df lt data frame a c rep x 3 re
  • 使用 data() 的 R 包命名空间问题 -- 找不到数据集

    我在尝试在我自己的包中导入包 即 robfilter 时遇到了问题 我尝试使用它的方法之一 adore filter 在这一行失败 data critvals 出现错误 未找到数据集 critvals 如果我通过 require robfi
  • 在 R 的 stargazer 表中设置注释格式

    我在用stargazer包来生成 回归输出 表 一切都在奇迹般地进行 直到我开始编辑笔记 First 换行很难 但是 Bryansuggests https stackoverflow com questions 21720264 star
  • 将从数据透视表包生成的数据透视表转换为数据帧

    我正在尝试制作一个数据透视表pivottabler包裹 我想将数据透视表对象转换为数据框 以便我可以将其转换为数据表 带有 DT 并在 Shiny 应用程序中渲染它 以便可以下载 library pivottabler pt qpvt mt
  • R中的引用调用(使用函数修改对象)

    我刚刚接触 R 很惊讶地发现函数不会修改对象 至少看起来这是默认的 例如 我编写了一个函数 只是为了在表格中的一个标签上粘贴一个星号 它在函数内部工作 但表本身没有改变 我主要来自Ruby 那么 在 R 中使用函数更改对象的正常 可接受的方

随机推荐

  • 如何将方法标记为强制方法?

    假设您使用构建器模式创建一个名为 Person 的类 并假设该 Builder 类包含方法body head arms 而且当然build 然后你考虑方法head and build 该类的用户必须这样做 我们希望以某种方式将这些方法标记为
  • Internet Explorer 在查询字符串中存在特殊字符问题

    这不是一个new问题 这里有很多关于 IE 在处理查询字符串中的特殊字符时遇到问题的问题 在所有情况下都是相同的 Chrome Firefox Safari 每个 都可以正确处理 UTF 8 编码的 URL 几乎所有这些甚至都可以处理 IR
  • (x:_) 和 [x:_] 是什么意思?

    head a gt a head error No head for empty lists head x x head a gt a head xs case xs of gt error No head for empty lists
  • 获取监视器的名称

    我在使用 winapi 检索监视器的名称时遇到了一些麻烦 根据 stackoverflow 上的其他条目 获取监视器名称的正确方法是 EnumDisplayDevices nullptr 0 oDisplayDevice 0 char lp
  • Haskell 类型让简单的“平均”函数令人沮丧

    我正在尝试初学者 Haskell 我想编写一个平均函数 这似乎是世界上最简单的事情 对吧 Wrong 看起来 Haskell 的类型系统禁止平均值处理通用数字类型 我可以让它处理积分列表或分数列表 但不能同时处理两者 I want aver
  • HTML5 Canvas + 下标和上标

    我想在画布中填充文本作为下标和上标选项 我该如何实现这一目标 请帮忙 由于您不允许在以下位置使用 HTMLdrawText你不能使用
  • 终端 ANSI 颜色不适用于 Inline::Perl5 (Data::Printer)

    以下 Perl 5 脚本 use strict use warnings use Data Printer my a 1 2 3 4 p a 给出输出 注意蓝色 而这个 Perl 6 脚本 use Data Printer from
  • 如果在 Crystal Reports 中重复则抑制字段的公式

    我有一个视图 显示水晶报告上的数据 其中有关税 租金 份额 毛额和净额等字段 我的问题是 如果有人更改数据库中的关税 它会显示 2 行具有不同关税的相同记录 这是正常的从数据库的角度来看 这是一种行为 但如果相同的 ID 具有不同的费率或租
  • Xamarin 中的“XamlCTask”任务意外失败

    我目前在构建 Xamarin Forms 解决方案时遇到问题 我收到一个错误The XamlCTask task failed unexpectedly 我尝试查看 Xamarin 日志和 Stacktrace 但我似乎找不到问题所在 有什
  • makefile 中的 patsubst

    我必须使用不同的 CFLAGS 从同一组 c 创建不同的 o 文件 我想使用 patsubst 从相同的 c 生成不同的 o 文件 我在下面的语句中做错了 请帮忙 我想从同一组 c 源文件生成一组具有 CC CFLAGS 02 c lt o
  • 平台默认字符编码如何影响跨平台性能

    我读过 例如在读取文本文件并将文本导入数组等时使用平台默认字符编码是个坏主意 您能否解释一下这将如何影响跨平台性能 以及如何解决该问题 是否有应该用于跨平台应用程序的编码 谢谢 这与性能无关 而是与显示和读取正确编码的文本有关 有多种方法可
  • setText 不将文本设置为 EditText

    我遇到了一个问题 这是我在近三年的 Android 开发过程中从未遇到过的问题 我想拍照 拍照后EditText活动的内容变得清晰 我正在做的是设置的值EditText to Strings using getText toString 拍
  • \c 中的 377 个字符

    我正在尝试读取 c 中的文件 我有一个 txt 文件 它的内容如下 文件一 txt 文件二 txt 文件三 txt 文件四 txt 当我尝试使用 fopen 读取此文件时 我得到以下输出 文件一 txt 文件二 txt 文件三 txt 文件
  • PyCharm - OS X 上的 $PATH

    我需要在 PyCharm 中调试一个 py 脚本 该脚本使用 unix 二进制文件 如 which grep 等 如果我从终端 bash 启动 py 脚本 则会找到 unix 二进制文件并且所有工作都按预期进行 如果我从 PyCharm 调
  • 如何获取 jpg 文件的深度?

    我想使用 Python 检索 jpeg 文件的位深度 使用 Python 图像库 import Image data Image open file jpg print data depth 然而 对于明显的 24 位图像 这给了我 8 的
  • 如何在 OS X 10.6 上构建 64 位 Python —— 只有 64 位,没有通用的废话

    我只是想在我的开发机器上构建这个 来自 Python org 的二进制安装仍然是 32 位 安装扩展 例如 MySQLdb 让我发疯 试图找出每个扩展的正确标志 澄清 我没有替换系统 Python 我只是将 Python org 二进制文件
  • 阻止通过 http 直接访问文件,但允许 php 脚本访问

    我正在将文件 pdf doc flv 等 加载到缓冲区中 并通过脚本将它们提供给我的用户 我需要我的脚本能够访问该文件 但不允许直接访问它 实现这一目标的最佳方法是什么 我应该使用我的权限执行某些操作还是使用 htaccess 锁定目录 最
  • 是否可以对SVN中存储的内容进行加密?

    如果我将源代码存储在共享托管公司的 SVN 中 是否可以对内容进行加密 这样即使有人有权访问该存储库 他们也无法在普通视图中看到源代码 有这个插件吗 否则我想自己实现这个会很疯狂 这里的正确答案是 找到您信任的托管提供商 如果存在监管问题
  • Xcode - 如何制作弹出菜单[重复]

    这个问题在这里已经有答案了 我想在 Xcode 中制作一个弹出菜单 我该怎么做 我希望它看起来漂亮又专业 以下是使用 UIActionSheet 在 UITextView 中显示弹出菜单以响应长按附件的示例 void attachmentA
  • tmPlot 在命名空间中,但未找到其依赖项

    我有一个使用的包tmPlot函数来自treemap 但是当我尝试使用该函数时 它会抛出一个错误 表明其依赖项之一未加载 Error in tmPlot data index index vSize vSize could not find