Q&A | 热图的单元格颜色和数值标签可以不一一对应吗?

简介: Q&A | 热图的单元格颜色和数值标签可以不一一对应吗?

数据准备


# 创建一个基因表达矩阵数据 以此数据为热图单元格颜色
test = matrix(rnorm(200), 20, 10)
test[1:10, seq(1, 10, 2)] = test[1:10, seq(1, 10, 2)] + 2
test[11:20, seq(2, 10, 2)] = test[11:20, seq(2, 10, 2)] + 3
test[15:20, seq(2, 10, 2)] = test[15:20, seq(2, 10, 2)] + 4
colnames(test) = paste("Sample", 1:10, sep = "")
rownames(test) = paste("Gene", 1:20, sep = "")
head(test)
> head(test)
       Sample1     Sample2   Sample3    Sample4   Sample5    Sample6   Sample7
Gene1 2.591946  0.94322447 1.1294228 -1.7029648 0.5565071 -1.4958268 1.4481296
Gene2 1.880310 -0.10931712 1.9482818  1.2651684 1.7914298 -0.7684170 0.8172005
Gene3 2.074005 -0.07037692 2.9084477  0.3603572 1.5614365  0.4084885 2.6206636
Gene4 2.741277 -0.48431909 1.2502742 -0.5836394 1.7814062  1.9001363 2.4463130
Gene5 2.753295 -0.13833633 1.6783939 -1.9940788 3.4599659  0.1100091 2.4218847
Gene6 1.737329 -0.06876564 0.8522292  1.9022098 1.4179401  1.1403868 2.4424648
         Sample8  Sample9     Sample10
Gene1  1.1504492 1.883642  0.659804377
Gene2  0.1679410 2.925546 -0.453913733
Gene3 -0.5661093 2.648230 -0.694936825
Gene4 -1.0861182 1.849791 -0.006846303
Gene5 -0.6653028 3.040377  1.373052045
Gene6  0.7148484 2.292559 -0.635323077
## 创建一个矩阵,以此数据为单元格数值标签
test1 = matrix(rnorm(200,100), 20, 10)
colnames(test1) = paste("Sample", 1:10, sep = "")
rownames(test1) = paste("Gene", 1:20, sep = "")

绘制


#devtools::install_github("jokergoo/ComplexHeatmap")
library('ComplexHeatmap')
library(circlize)
# 色阶颜色
col_fun = colorRamp2(c(-2, 0, 2), c("#4878b5", "#fefec1", "#d83128"))
# 热图绘制
Heatmap(test, name = "test", col = col_fun,
        row_km = 4, column_km = 2,
        cluster_rows = T,
        cluster_columns = T,
        cell_fun = function(j, i, x, y, width, height, fill) {    #数值标签添加
          grid.text(sprintf("%.1f", test1[i, j]), x, y, gp = gpar(fontsize = 10))
        })

image.png


相关文章
|
22天前
|
开发工具
如何设置单元格的填充颜色?
【10月更文挑战第22天】如何设置单元格的填充颜色?
21 2
|
22天前
表格数据填充方法单元格数据填充
表格数据填充方法单元格数据填充【10月更文挑战第22天】
26 2
|
22天前
如何设置条件格式以填充颜色?
【10月更文挑战第21天】如何设置条件格式以填充颜色?
36 2
|
1月前
|
JavaScript API
Echarts中单独为每个legend图例设置样式-根据数据正负显示不同样式
通过上述方法,我们便能够在ECharts中根据数据的正负为每个图例项设置不同的样式,增强了图表的可读性和表现力。这种方法虽然略显间接,但不失为一种灵活的解决方案。
63 2
|
2月前
单元格内容与单元格边界之间的距离
单元格内容与单元格边界之间的距离。
19 6
|
2月前
显示边界的表格
显示边界的表格。
17 3
|
6月前
|
监控 计算机视觉
指定的颜色范围过滤出特定颜色的区域
指定的颜色范围过滤出特定颜色的区域
58 5
35Echarts - 柱状图(交错正负轴标签)
35Echarts - 柱状图(交错正负轴标签)
178 0