【问题标题】:R return corrplot as objectR返回corrplot作为对象
【发布时间】:2015-03-11 20:10:13
【问题描述】:

corrplot 绘制相关矩阵,但不返回图形对象 (grob)

我想在一个页面上绘制几个相关矩阵。对于正常的绘图,我会使用 gridExtra 包中的 grid.arrange。但是由于 corrplot 只打印并且不返回对象,所以我看不到如何执行此操作。

是否有替代corrplot 的解决方法或更好的替代方法?

【问题讨论】:

    标签: r plot r-corrplot grob


    【解决方案1】:

    最近的gridGraphics 包可能会按照您的要求进行:将情节作为一个grob 返回。

    mat <- matrix(rnorm(100), ncol=10)
    library(corrplot)
    corrplot(cor(mat))
    
    library(gridGraphics)
    grab_grob <- function(){
      grid.echo()
      grid.grab()
    }
    
    g <- grab_grob()
    library(gridExtra)
    grid.newpage()
    grid.arrange(g,g,g,g)
    

    【讨论】:

      【解决方案2】:

      有旧的备用par(mfrow=c(x, y)),其中x 是您希望绘制的行数,y 是列数。然后它会在你调用这些图的时候横穿然后向下。

      par(mfrow = c(2, 2))
      corrplot(cor(mat1))
      corrplot(cor(mat2))
      corrplot(cor(mat3))
      corrplot(cor(mat4))
      
      par(mfrow = c(1, 1)) #To clear layout
      

      将绘制为

      Mat1 | Mat2
      -----------
      Mat3 | Mat4
      

      【讨论】:

        【解决方案3】:

        不确定我的问题是否正确,但也许您正在寻找的内容很简单 layout

        mat <- matrix(rnorm(100), ncol=10)
        
        layout(matrix(1:2))
        corrplot(cor(mat))
        corrplot(cor(mat))
        

        【讨论】:

          猜你喜欢
          • 2011-05-07
          • 1970-01-01
          • 1970-01-01
          • 2017-05-31
          • 2015-07-24
          • 2021-06-03
          • 1970-01-01
          • 1970-01-01
          • 2012-05-30
          相关资源
          最近更新 更多