初学者R语言:热图基础画法及个性化调整详解

Python014

初学者R语言:热图基础画法及个性化调整详解,第1张

热图(Heatmap):用颜色变化直观的表达数据之间差异的图,是对实验数据进行质制和差异数据的展现,是数据挖掘类文章的标配。

例如上图,每个小方格表示每个基因,其颜色表示该基因表达量大小,表达量越大颜色越深(红色为上调,蓝色为下调)。每行表示每个基因在不同样本中的表达量情况,每列表示每个样品中所有基因的表达量情况。上方树形图表示对来自不同实验分组的不同样品的聚类分析结果

R语言中的颜色

1 颜色名称表示法

R语言中的颜色表示方式主要有两种,一种是用颜色的名称表示,例如:blue、red、orange等等,要知道R语言中颜色名称可以使用colors()方法得到。下图只显示50个颜色值:

library(scales)

show_col(colors()[1:50],label=T)

2 颜色值表示法

另一种颜色的表示方法是用数值的方法表示:也就是RGB的方法表示,通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的 可以使用rgb()方法-设置三种颜色的值(0-1):例如 rgb(1, 0, 0)表示红色, 设置透明颜色时,再添加一个参数:rgb(1, 0, 0, 0.1)。也可以是0-255之间的数值:例如rgb()方法设置颜色(0-255): rgb(255, 0, 0, max=255) 也表示红色,  透明颜色:rgb(255, 0, 0, 0.1 ,max=255)。还有一种颜色写法是用16进制的字符表示:#FF0000表示红色,没两位依次表示RGB的值;

3 数字表示法

可以用数字1、2、3等表示颜色,这些数字指向R语言中的色板palette颜色,如1代表当前palette的第1种颜色,2代表当前palette的第2种颜色等,默认色板中的颜色如下:

>palette()

[1] "black"   "red"     "green3"  "blue"    "cyan"    "magenta" "yellow" 

[8] "gray"

4 颜色的应用

为柱状图填充颜色,4种颜色都表示红色,分别填充到柱状图的4个柱子中: