对角显示R相关矩阵中的数字

时间:2013-08-20 20:49:13

标签: r heatmap psych

我正在使用

生成相关矩阵
library(psych)
corMat = cor(data)
cor.plot(corMat,numbers=TRUE,colors=TRUE,n=51,main=NULL,labels=NULL)

但想要改变它,以便热图中显示的数字以对角线显示。

3 个答案:

答案 0 :(得分:4)

我可能误解了,但如果您只是想要旋转文字标签,可以通过更改cor.plot的来源,特别是text(rx, ry, round(r * 100))行到text(rx, ry, round(r * 100), srt=45)来实现此目的,这个: enter image description here

答案 1 :(得分:2)

看起来不像cor.plot可以将任何参数传递给绘制数字的text调用。因此,您可以修改函数但打开源(edit(cor.plot))并更改行

text(rx, ry, round(r * 100))

text(rx, ry, round(r * 100), srt = 45)

或者您希望旋转数字的程度。然后,您可以复制该代码并使用修改后的代码定义新函数(my.cor.plot)。

我认为执行此操作的方法较少,但我从未使用它们,这样可行。

答案 2 :(得分:1)

这是一个很好的建议,现在在精神版1.3.10.11中实施(今天将发布给Cran)。这是通过向text命令添加...来完成的。具体地,

text(rx,ry,round(r * 100),...)

这样做的好处是可以利用图形参数的强大功能。

截至今天,您现在可以指定cor.plot(correlation.matrix,numbers = TRUE,srt = 45)。

感谢。

比尔