如何存储在多重图中使用的 ggplots 列表而不覆盖以前的图?

2024-04-06

我想使用从另一个函数创建的对象(cd参数如下)。协方差矩阵存储在 3 维数组中,因此cd$covmat[,,i]称为第 i 个协方差矩阵。

最初我对复制相同的情节有一些疑问。但是,我发现我遇到了环境问题。我尝试了多种方法来解决这个问题,下面的代码是最新的,但我不明白为什么它不能正确读取。

这有什么特别的原因吗?我尝试过包含和排除环境参数(我希望不需要),并且我尝试直接使用cd$covmat[,,i]在里面aes()范围。

drawCovs<-function(cd,ncols){
    require(ggplot2)
    coords=expand.grid(x=1:cd$q,y=1:cd$q)
    climits = c(-1,1)*max(cd$covmat)
    cd$levels=c(cd$levels,"Total")
    covtext=ifelse(!(cd$use.cor),'Covariance','Correlation')
    plots=list()
    cmat=list()
    for (i in 1:(nlevels+1)){
        cmat[[i]]<-cd$covmat[,,i]
        .e<-environment
        plots[[i]]<-ggplot(environment=.e)+geom_tile(aes(x=coords$x,y=coords$y,
        fill=as.numeric(cmat[[i]]),color='white'))+
        scale_fill_gradient(covtext,low='darkblue',high='red',limits=climits)+ylab('')
        +xlab('')+guides(color='none')+scale_x_discrete(labels=cd$varnames,
        limits=1:cd$q, expand=c(0,0))+scale_y_discrete(labels=cd$varnames,
        limits=1:cd$q, expand=c(0,0))+theme(axis.text.x = element_text(angle = 90,
        hjust = 1))+labs(title=paste0(covtext,"s of data, ",cd$levels[i]))
    }

    multiplot(plotlist=plots,cols=ncols)
}

如果您最终尝试通过直接调用环境来修复问题,那么您的代码可能过于复杂。这是一个简单的代码片段,可以作为您的函数的核心:

drawCovs <- function(cd, ncols) {
  require(ggplot2)
  require(reshape2)
  plots=list()
  cmat=list()
  for (i in 1:(length(cd$covmat))) {
    cmat[[i]] <- cd$covmat[[i]]
    plots[[i]] <- ggplot(melt(cmat), aes(x=Var1, y=Var2, fill=value)) + 
                  geom_tile(color='white')
  }  
  multiplot(plotlist=plots,cols=ncols)
}

cd <- list()
cd$covmat <- list(matrix(runif(25), 5), matrix(runif(25), 5))

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

如何存储在多重图中使用的 ggplots 列表而不覆盖以前的图? 的相关文章

  • 使用括号表示 y 轴上的负值 ggplot2

    我想在括号中显示 y 轴负值 而不是用负号 例如 我想显示 2 000 而不是 2 000 我在 R 中使用 ggplot2 我尝试在scale y continuous内部使用 negative parens TRUE 如下所示 但没有成
  • 根据列中的部分字符串匹配选择数据框行

    我想根据列中字符串的部分匹配从数据框中选择行 例如列 x 包含字符串 hsa 使用sqldf if它有一个like语法 我会做类似的事情 select from lt gt where x like hsa 很遗憾 sqldf不支持该语法
  • Rplotly:悬停时显示图像

    我正在尝试重现this https plotly r com interactives tooltip image html显示数据点悬停图像的简单绘图 代码可用here https plotly r com supplying custo
  • 将 2D 数组追加到 3D 数组,扩展第三维

    我有一个数组A有形状的 480 640 3 和一个数组B有形状 480 640 如何将这两个附加为一个具有形状的数组 480 640 4 I tried np append A B 但它不保留维度 而axis选项导致ValueError a
  • Rust 数组是否有与 JavaScript 的 indexOf 等效的东西?

    var fruits Banana Orange Apple Mango var index fruits indexOf Apple let fruits Banana Orange Apple Mango let index fruit
  • 如何从 ISI Web of Knowledge 检索有关期刊的信息?

    我正在从事一些预测文章引用计数的工作 我遇到的问题是我需要 ISI Web of Knowledge 中有关期刊的信息 他们逐年收集这些信息 期刊影响因子 特征因子 但无法一次下载所有一年期期刊信息 只有 标记全部 选项 该选项始终标记列表
  • 将所有 0 值替换为 NA

    我有一个包含一些数字列的数据框 某些行具有 0 值 在统计分析中应将其视为空 在R中将所有0值替换为NULL的最快方法是什么 将所有零替换为 NA df df 0 lt NA 解释 1 它不是NULL你应该用什么来替换零 正如它所说 NUL
  • 像matlab一样在python中连接数组而不知道输出数组的大小

    我正在尝试在 python 中连接数组 类似于 matlab array1 zeros 3 500 array2 ones 3 700 array array1 array2 我在 python 中做了以下操作 array1 np zero
  • R 和系统调用

    我过去曾使用 R 对命令行进行非常基本的调用 例子可以找到here https stackoverflow com questions 3284301 command line in r code 这一次 我希望模仿这段从 Windows
  • 单击 hPlot 图表中闪亮的数据点时打印组名称

    我有一个闪亮的应用程序 它使用 rCharts 中的 highcharts 库显示一些图表 在某些情况下 我在单个图表上有多个图表 这些图表是使用 hPlot 中的组选项创建的 我希望在单击图表时打印单个数据点的所有参数 x y 和组值 我
  • 如何根据另一列的条件语句将因子列添加到数据框?

    我有一个数据框 我需要根据条件语句添加一个因子列 这里是data https www dropbox com s hujiacus8ek5o5z MoroccoCGE CC Stats csv Code morstats agri f lt
  • 将相同的多个对象推送到多个数组中

    这是后续使3个数组相互对应 第一个是对象名称 https stackoverflow com questions 57564488 make 3 arrays correspond to each other with the first
  • 在 R data.table 中计算时间增量

    我有一个篮球运动员数据的数据表 其中包括每场比赛和多名球员的比赛日期 我想创建一个列来计算自上一场比赛以来的天数 我在 R 中使用 data table 包 PLAYERID GAME DATE 1 2989 2014 01 1 2 298
  • 液体标记图过滤器示例

    我可以举一个有关 Liquid 贴图过滤器如何工作的通用示例吗 似乎没有这方面的文档 映射过滤器是 映射 收集给定属性上的数组 但如何确定该属性 这个例子存在 液体模板贴图过滤器 https stackoverflow com questi
  • 计算横截面积作为高度的函数

    我试图弄清楚如何计算不同水位的河流横截面的充满水的面积 对于横截面 我有 5 m 宽河流上每 25 cm 的深度 并且可以根据之前很好回答的问题来计算面积计算不同高度的横截面积 https stackoverflow com questio
  • 在两个向量之间交换元素(交叉)

    假设我有 chromosome 1 lt c 0010000001010000 chromosome 2 lt c 0100000001001010 我该如何实施step 3 5 Evaluate NC1 否 中 1 个chromosome
  • 写入抓取数据的 csv 文件时如何拆分项目名称

    我有兴趣使用 R 从网上抓取的数据创建 csv 或类似的 Excel 兼容文件 到目前为止 我通过执行以下操作来存储数据 require textreadr spiegel lt read html http www spiegel de
  • 计算网格中物种的出现次数

    我有大约500 000点R美国各地候鸟物种的出现数据 我试图在这些点上覆盖网格 然后计算每个网格中出现的次数 统计完计数后 我想将它们引用到网格单元 ID 在 R 中 我使用了over 函数只获取范围图中的点 这是一个形状文件 Read i
  • ggplot2 geom_function 可以跨 arg 值进行分面吗?

    我想通过分面 geom function 创建 ggplot2 图 以便函数的参数在网格中变化 例如像这样的东西 my function lt function x par if par 1 return sin x else return
  • 从由空格分隔的单个输入整数列表创建二维数组

    我正在解决一些问题geeksforgeeks我遇到了一个特定的问题 其中在测试用例中提供了输入 如下所示 2 2 denotes row column of the matrix 1 0 0 0 all the elements of th

随机推荐

  • scala 2.10中通过反射调用构造函数

    在 scala 2 10 M4 中调用类的构造函数的最佳实践是什么 回答我自己的问题 调用构造函数与调用方法不同 这是在 scala 2 10 中执行此操作的正确方法 import reflect runtime universe impo
  • 安卓。一起滚动 2 个列表视图

    好的 我想要实现的是一种与 Excel 中的冻结窗格具有相同效果的布局 也就是说 我想要一个与主 ListView 一起水平滚动的标题行 以及与主 ListView 一起垂直滚动的左侧 ListView 在另一个维度滚动时 标题行和左侧列表
  • Selenium:有没有可以与 Selenium Server/RC 集成的 JS (JavaScript) 代码覆盖工具

    Selenium 有没有可以与 Selenium Server RC 集成的 JS JavaScript 代码覆盖工具 Hi 我想通过我的 Selenium 测试套件完成 JS 代码覆盖率 是否有任何代码覆盖率工具可以与我现有的 selen
  • 带有 PHP 后端的日志套件?

    有人知道 PHP 应用程序的通用日志记录套件吗 我所说的 套件 是指一个轻量级的日志函数库以及成熟的后端来查看它们 后端必须是可配置的 并使用以下功能显示日志条目 按日期过滤 按事件过滤 警告 错误 自定义事件 按类别过滤 按用户过滤 按关
  • 安装 symfony-cmf-standard 时“执行缓存时发生错误:clear --no-warmup”

    我试图使用以下命令安装 symfony cmf standard composer phar create project symfony cmf standard edition symfony cmf standard stabilit
  • Int[].Contains 在 EF6 中不起作用

    我有一个奇怪的问题 基本上我有这个代码 var langauges from l in context languages where Model LanguageIDs Contains l LanguageID select l ToL
  • 显示 searchResults TableView 时隐藏 UITableView

    我有一个UITableView with a searchDisplayController实施的 我有 tableView backgroundColor UIColor clearColor and self searchDisplay
  • WordPress 网站迁移 - 图标丢失

    我最近按照以下步骤将本地站点迁移到临时服务器https codex wordpress org Moving WordPress https codex wordpress org Moving WordPress一切似乎都工作正常 最初
  • 延迟任务开始的正确方法

    我想安排一个任务在 x 毫秒内启动 并能够在它开始之前 或在任务开始时 取消它 第一次尝试是这样的 var cancelationTokenSource new CancellationTokenSource var token cance
  • 在日志中包含 Active Record 查询的作用

    Rails 现在支持多个数据库角色 默认情况下 https guides rubyonrails org active record multiple databases html using manual connection switc
  • powershell:如何从 [ref] 变量写入主机值

    我是 Powershell 新手 我正在尝试弄清楚如何从函数内打印 ref 变量的值 这是我的测试代码 function testref ref obj1 obj1 value obj1 value 5 write host the new
  • MongoDB 限制查找结果

    如何查询集合并限制返回的结果 假设我有一个包含 500M 文档的数据库 但我只想搜索并返回前 10 个匹配项 而不必搜索整个集合 出于性能原因 理想情况下 我可以在 O m n 时间内返回第 n 到 m 个结果 如果这可能或如何做到 有什么
  • ASP.Net Core 错误 JSON

    我正在玩一点 ASP NET Core 我正在创建一个基本的 webapi 我想在出现问题时显示 JSON 错误 打印屏幕在屏幕上显示我想要的内容 唯一的问题是发送时状态码为 200 catch NullReferenceException
  • 在 Visual Studio 调试器中查看命名空间全局变量?

    在 Visual Studio 2008 中调试非托管 C 项目时 我偶尔想查看全局变量的值 我们没有很多这些 但那些都在名为 全局 的名称空间中声明 例如 namespace global int foo bool bar 问题是 当代码
  • Dockerfile 中的 setfacl 没有效果

    我想在使用 setfacl 构建 docker 映像时为某些文件夹设置默认 acl 但它没有效果 默认 acl 不变 我的目标是在 opt 中创建的每个文件都必须对任何用户都具有 rwX 权限 因为该映像稍后将使用任意 uid 运行 并且需
  • 如何查看 conda 环境的创建日期?

    我创建了四个不同的版本conda virtual environments envs 用于图像处理任务 每个环境包括GDAL and OpenCV 以及相关库和依赖项的一些子集 我想将图像处理环境列表剔除到最近创建的一个 它将拥有我使用的最
  • 在整个项目上运行 CPPlint

    我想跑cplint py https github com google styleguide tree gh pages cpplint在我的整个项目中 不是通过单个文件来获取项目中所有 C C 文件的报告 如何在 macOS 和 Win
  • Java中列出目录和子目录中的所有文件

    列出 1000 多个目录和子目录中的文件名的最快方法是什么 编辑 我当前使用的代码是 import java io File public class DirectoryReader static int spc count 1 stati
  • 如何使用 SwiftUI 在 ScrollView 中选择一个项目?

    我想要完成的是有一个项目循环 我可以点击其中一个项目 一旦点击它就会以编程方式变得更大 这是我的代码和到目前为止的结果 struct ContentView View State var emojisArray State var sele
  • 如何存储在多重图中使用的 ggplots 列表而不覆盖以前的图?

    我想使用从另一个函数创建的对象 cd参数如下 协方差矩阵存储在 3 维数组中 因此cd covmat i 称为第 i 个协方差矩阵 最初我对复制相同的情节有一些疑问 但是 我发现我遇到了环境问题 我尝试了多种方法来解决这个问题 下面的代码是