#绘制圈图 pdf(file="circos.pdf", width=7, height=7) par(mar=c(2,2,2,4),cex=0.7) circos.par(gap.degree=c(3,rep(2, nrow(cor1)-1)), start.degree = 180) chordDiagram(cor1, grid.col=rainbow(ncol(rt)), col=col1, transparency = 0.5, symmetric = T) par(xpd=T) #绘制图例 colorlegend(col, vertical = T,labels=c(1,0,-1),xlim=c(1.1,1.3),ylim=c(-0.4,0.4))
时间: 2023-08-21 20:04:18 浏览: 128
这是一段 R 语言的代码,用于绘制圆形关系图,其中使用了 circos 包和 chordDiagram 函数。同时,还包括了绘制图例的代码 colorlegend。这段代码的作用是将一个相关性矩阵 cor1 转化为圆形关系图,其中每个变量对应圆周上的一个扇形区域,扇形区域之间的连线代表两个变量之间的相关性。图例中的标记表示相关性的取值。
相关问题
解释一下“par(mar=c(2,2,2,4)) circos.par(gap.degree=c(3,rep(2, nrow(cor1)-1)), start.degree = 180) chordDiagram(cor1, grid.col=rainbow(ncol(rt)), col=col1, transparency = 0.5, symmetric = T) par(xpd=T)”
这段代码主要用于绘制一个基于圆环的相关系数矩阵可视化图,主要包含以下几个步骤:
1. `par(mar=c(2,2,2,4))` 设置绘图的边缘空白区域大小,其中 mar 代表边缘空白区域大小(上下左右),这里分别设置为 2, 2, 2, 4。
2. `circos.par(gap.degree=c(3,rep(2, nrow(cor1)-1)), start.degree = 180)` 设定 circos 图的参数,其中 `gap.degree` 定义了每个扇形之间的间隔大小,第一个元素为扇形与画布环之间的距离,后面的元素表示每个扇形之间的距离,这里分别设置为 3 和 2,共有 nrow(cor1)-1 个扇形;`start.degree` 定义了起始角度,这里设置为 180 度。
3. `chordDiagram(cor1, grid.col=rainbow(ncol(rt)), col=col1, transparency = 0.5, symmetric = T)` 核心函数 `chordDiagram` 用于绘制基于圆环的相关系数矩阵可视化图。其中 `cor1` 表示相关系数矩阵;`grid.col=rainbow(ncol(rt))` 表示象征性地为每一列设置不同的颜色,这里使用了彩虹色;`col=col1` 表示用颜色矩阵 `col1` 对相关系数矩阵中的元素进行着色;`transparency = 0.5` 表示设置透明度为 0.5;`symmetric = T` 表示相关系数矩阵是对称的。
4. `par(xpd=T)` 用于在绘制完 circos 图后,将画布扩展到绘图边缘空白区域,以防止绘图被边缘空白区域截断。
circos.par(gap.after = c(rep(5, nrow(mat) - 1), 1, rep(5, ncol(mat) - 1), 1)) 在R语言中如何理解
这段代码是用于设置 Circos 图的参数,其中 gap.after 参数是一个向量,用于指定每个区块之间的间隔大小。这个向量的长度应该是 nrow(mat) - 1 + ncol(mat) - 1 + 2,其中 nrow(mat) 和 ncol(mat) 分别是矩阵 mat 的行数和列数。具体来说,这个向量的前 nrow(mat) - 1 个元素表示每行之间的间隔大小,接下来的 1 个元素表示第一行和第二行之间的间隔大小,再接下来的 ncol(mat) - 1 个元素表示每列之间的间隔大小,最后一个元素表示第一列和第二列之间的间隔大小。
阅读全文