资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

R语言怎样绘制热图

本篇文章为大家展示了R语言怎样绘制热图,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

成都创新互联是一家专业提供广水企业网站建设,专注与做网站、成都做网站html5、小程序制作等业务。10年已为广水众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。

各位小可爱大家好啊,虽然是周末但小编还是马不停蹄的给大家分享知识点。我们平时看文献的时候会看到各种好看的热图,瞬间觉得逼格就上来了,官方解释:热图可以简单地聚合大量数据,,并使用一种渐进的色带来优雅地表现出来,可以很直观地展现空间数据的相对大小。其实热图的绘制并不难,你也可以画出好看的热图。准备好了吗,是时候展现真正的技术了。

第一步安装:

install.packages("pheatmap") #安装pheatmap包install.packages("RColorBrewer") #安装RColorBrewer包library(pheatmap) #加载pheatmap包library(RColorBrewer) #加载RColorBrewer包

这里稍微给大家介绍一下RColorBrewer包:RColorBrewer is an R package that allows users to create colourful graphs with pre-made color palettes.为什么要使用它,是因为他艳丽及丰富的配色深深的把小编吸引住了,这么好的东西一定要分享给大家。他有三个配色。大家可以根据情况使用。

R语言怎样绘制热图

R语言怎样绘制热图

R语言怎样绘制热图

第二步读取数据:

首先我们来看一下数据的格式,第一行为样品名称,第一列为基因名称。

R语言怎样绘制热图

fitness <- read.delim("C:/Users/dell/Desktop/fitness.txt", row.names = 1) #读取数据id <- read.delim("C:/Users/dell/Desktop/id.tmp") #读取需要画图的基因fit.sel <- fitness[which(rownames(fitness) %in% id$ID), ] #提取需要画图的数据并保存
 

第三步查看数据分布:

summary(fit.sel)  #查看数据最大值最小值设置scale范围
 

第四步画图:

bk = unique(c(seq(-5, 0, length=100), seq(0, 2, length=100))) #scale范围col = c(colorRampPalette(rev(brewer.pal(11, "RdYlBu")))(200)) #颜色选取RdYlBupheatmap(fit.sel, color = col, breaks = bk, show_rownames = T, clustering_method = "ward.D2")
 

最后查看结果:

R语言怎样绘制热图

R语言怎样绘制热图

最后总结一下常用参数的设置:

treeheight_row 设置row方向的聚类树高
treeheight_col 设置col方向的聚类树高

cellheight 表示每个单元格的高度
cellwidth 表示每个单元格的宽度

display_numbers 表示是否将数值显示在热图的格子中(T/F)。

fontsize 表示热图中字体显示的大小

number_color 设置显示内容的颜色

pheatmap(fit.sel, cellheight=9, cellwidth=18, treeheight_row=100, treeheight_col=18, color = col, breaks = bk, show_rownames = T, display_numbers=T, number_color="black", fontsize=6, clustering_method = "ward.D2")
 

这样运行的结果如下:

R语言怎样绘制热图

上述内容就是R语言怎样绘制热图,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


网站栏目:R语言怎样绘制热图
分享网址:http://cdkjz.cn/article/iijeej.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220