【问题标题】:Create colour range with corrplot in R在 R 中使用 corrplot 创建颜色范围
【发布时间】:2021-01-28 12:34:16
【问题描述】:

我已经在谷歌和堆栈溢出中搜索了我在 R 中的问题的答案,但找不到合适的答案。 我有一个矩阵,我将其导入 R,然后我使用 corrplot 进行绘图。我的问题是我有三个相关分组:

1: 0-

2:>0.5-0.7

3: >0.7

我希望每个分组使用一种颜色,因此第 1 组为红色,第 2 组为蓝色,第 3 组为绿色

有没有办法做到这一点?

这是一些虚拟数据:

library(corrplot)

data(mtcars)
M <- cor(mtcars)
set.seed(0)
corrplot(M,type='upper',method = "square",addCoef.col = "white")

非常感谢!

【问题讨论】:

    标签: r r-corrplot


    【解决方案1】:

    也许可以试试:

    data(mtcars)
    M <- abs(cor(mtcars)) # absolute values 
    M[M<=0.5]=-1          # your conditions
    M[M>=0.7]=1
    M[M != -1 & M != 1]=0
    my.col <- colorRampPalette(c("red", "blue", "green"))  # your colors 
    set.seed(0)
    corrplot(M,type='upper',method = "color", col = my.col(3), cl.pos = "n")
    

    https://cran.r-project.org/web/packages/corrplot/vignettes/corrplot-intro.html

    【讨论】:

    • 你想显示数字相关系数还是这个解决方案足够?
    • 非常感谢,这正是我一直在寻找的。添加系数会很好,如果可能的话,匹配条件的图例会很好吗?很抱歉,当涉及到这样的事情时,没有精明。 @卢卡斯韦伯
    • 抱歉,还有没有办法将第一个对角线涂成白色?我尝试更改:df2[df2==0.0]=-0.5,然后是:df2[df2
    • 我考虑过了,但是所有额外的东西都会很麻烦,因为你需要两个矩阵作为输入,我认为标准 corplot 功能不支持,对不起!
    猜你喜欢
    • 2017-03-20
    • 2015-03-22
    • 1970-01-01
    • 1970-01-01
    • 2017-05-04
    • 2021-12-06
    • 2016-12-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多