前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【科研猫·绘图】今夏最热的“热图”(带R代码分享)

【科研猫·绘图】今夏最热的“热图”(带R代码分享)

作者头像
用户6317549
发布2019-09-24 16:58:39
4.9K0
发布2019-09-24 16:58:39
举报
文章被收录于专栏:科研猫科研猫

热图是科研论文中一种常见的可视化手段,因其丰富的色彩变化和饱满的信息涵盖量,往往是一篇文章中最引人注目的所在之一。上至CNS顶刊,下至1到2分小文,可以说热图无处不在,堪称文章C位。如何做出一张完美的热图,是居家旅行(科研写作),拜访亲朋好友(征服editor和reviewer的心)必备技能。本次教程,我们将为大家详细讲述如何使用R语言绘制高大上的热图。

什么是热图,比如上图是来源于两篇CNS级别文章中截取下来的主图,一眼看去,一张合格的热图主要由四大部分组成,一个是像浴室瓷砖一样的小色块铺成的色板,也可以称作热图本身,是热图必不可少的部分,一个是色板上面的聚类树,一个是色板和聚类树中间附注,用来标注样本的信息,最后一个便是标注色板的颜色变化尺。

热图的本质是表现数值矩阵,色板中的每个方格都是一个数值,按照色彩变化尺的要求,根据数值大小显示出不同颜色。在生物医学领域的文章中,热图通常用来以样本为列,基因等实验得到的表型数值为行,用来展示不同组别/样本之间的差异。

好了,理论知识就介绍到这里,接下来就直接上干货啦~

本次教程介绍pheatmap这个R包,此包功能强大,制作热图方便给力。

1. pheatmap包安装及加载

我们先在R上安装pheatmap这个包,首先打开Rstudio。

2. 实战演练

pheatmap包的数据输入是一个矩阵(matrix),我们先读入基因表达谱数据

expression.txt

使用head函数查看文件,expression.txt文件中一共包含10个样本,50个基因,其中每一列为一个样本,每一行为一个基因

比如第一行第一列数据,代表M1样本中GBP4的表达量,直接使用pheatmap(data),便可以得到一张热图。

这样,一张热图就出来啦~

如果我们要修改热图的颜色,只需要使用color这个参数就可以啦。这里给大家推荐一个网址,https://www.bootcss.com/p/websafecolors/,里面有非常多的颜色可供选择。使用color颜色更改颜色变化尺之后的热图会更好看啦。我们可以参考文章中的绘图颜色,这样会让我们的热图更富有视觉效果。

color.key是我们构建的颜色变化尺,以后只需要修改color.key的内容,就可以轻松搞定各种色图颜色了。

在科研做图过程中,有时候我们并不需要对基因或者样本进行聚类,那么如何调整热图中的聚类树呢,在pheatmap函数中,cluster_row参数可以控制基因的聚类,cluster_col可以控制样本的聚类。比如将cluster_row设置为FALSE,那么基因就不会进行聚类运算了。

参考科研期刊中的文章热图,还有一个重要的部分,就是样本的附注,用来标注哪些样本是实验组,哪些样本是对照组。那么如何实现在热图中添加标注呢?代码如下:

本期干货

!!绘制热图代码!!

原文详情:“科研猫”公众号

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 科研猫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档