繁体   English   中英

绘制巨大的相关矩阵作为颜色

[英]Plot gigantic correlation matrix as colours

我有一个相关矩阵$ P_ {i,j} $,它是$ 1000 \\乘以1000 $。 给定数据,矩阵将具有高度相关的矩形块。 也就是说,如果您在此矩阵中的任意位置绘制$ 20 \\ times 20 $平方,则您将看到高度相关变量的补丁($ \\ rho_ {i,j}> 0.8 $)或中到不相关的变量($ \\ in [-0.1,0.5] $)。 这样做的原因是数据的结构。

如何用图形表示? 我知道一种可视化这样的矩阵的方法,但它仅适用于小尺寸:

install.packages("plotrix")
library(plotrix)
rhoMat = array(rnorm(1000*1000),dim=c(1000,1000))
color2D.matplot(rhoMat[1:10,1:10],cs1=c(0,0.01),cs2=c(0,0),cs3=c(0,0)) #nice!
color2D.matplot(rhoMat,cs1=c(0,0.01),cs2=c(0,0),cs3=c(0,0)) #broken!

如果在矩阵$ P_ {i,j} $的那个附近,相关性“趋于”高,而“趋向于”低,那么将绘制红色区域的函数或算法是什么(如果从从正相关色块向负相关色块移动时,一种颜色会变为另一种颜色)。 我想看一下有多少个高度相关的补丁,以及一个补丁是否与数据集中另一个位置的另一个补丁相关。

我只想在R这样做。

我认为您可以使用带参数breaks image来获取所需的内容:

dat <- matrix(runif(10000), ncol = 100)
image(dat, breaks = c(0.0, 0.8, 1.0), col = c("yellow", "red"))

对于这种问题,我总是想不到image -名称有点不明显。 我从heatmap开始,然后它使我image

查看corrplot程序包。 它具有用于可视化相关性的各种工具,它的一个选择是使用层次聚类在高相关性或低相关性的组周围绘制矩形。

我已经很容易在Excel中完成此操作。 您可以根据框内值的范围更改框的颜色。 您甚至可以创建一个从0到1的渐变。对于Excel,1000 x 1000会很大,但是我认为它会起作用。 您只需要缩小即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM