经常会想到用热图来展示某个基因或某些基因的表达量问题,今天用R中pheatmap包一步步绘制热图。

第一步:公众路径设置,调用包pheatmap,读取目的文件,查看文件。

 1 rm(list=ls())
2 setwd("D:/VIP/ARSTUDYLOCATION/heatmap/heatmap/")
3 getwd()
4
5 library(pheatmap)
6 library(ggplot2)
7
8 data <- read.table("test.FPKM.txt",header=T,row.names=1,sep="\t")
9 dim(data)
10 head(data)

第二步:逐步深入绘制热图(图1-图15)

一建热图(图1)
p<-pheatmap(data)
设置标准化方向scale,对其横向标准化
p<-pheatmap(data,scale="row")
设置边框为白色,横向纵向聚类为无;border="white;cluster_cols = F;cluster_rows = F
p<-pheatmap(data,scale="row",border="white",cluster_cols = F,cluster_rows = F)

  

图1

去掉横纵坐标中的id;show_rownames = F,show_colnames = F(图2)
p<-pheatmap(data,scale="row",show_rownames = F,show_colnames = F,border="white",cluster_cols = F,cluster_rows = F)

  

图2 去掉横轴和纵轴的名称

去掉右上角图例;legend = F(图3)
p<-pheatmap(data,scale="row",show_rownames = F,show_colnames = F,legend = F,border="white",cluster_cols = F,cluster_rows = F)

  

图3 将右上角的图例去掉

设置右上角图例的范围;legend_breaks=c(-1,1)(图4)
p<-pheatmap(data,scale="row",legend_breaks=c(-1,0,1),show_rownames = F,show_colnames = F,legend = T,border="white",cluster_cols = F,cluster_rows = F)
p<-pheatmap(data,scale="row",legend_breaks=c(-2,0,2),show_rownames = F,show_colnames = F,legend = T,border="white",cluster_cols = F,cluster_rows = F)

  

图4 更改图例范围

设置图中字的大小;fondsize(图5)
#图表字体:命令:fondsize=2/8
p<-pheatmap(data,scale="row",fontsize = 2,show_rownames = T,show_colnames = T,legend = F,border="white",cluster_cols = F,cluster_rows = F)
p2<-pheatmap(data,scale="row",fontsize = 8,show_rownames = T,show_colnames = T,legend = F,border="white",cluster_cols = F,cluster_rows = F)

  

图5 设置字的大小

改变横向和纵向字体大小;fontsize_row = 8,fontsize_col=12 (图6)
p<-pheatmap(data,scale="row",fontsize_row = 8,fontsize_col = 12,show_rownames = T,show_colnames = T,legend=T,border="white",cluster_cols = T,cluster_rows = T)
p<-pheatmap(data,scale="row",fontsize_row = 12,fontsize_col = 8,show_rownames = T,show_colnames = T,legend=T,border="white",cluster_cols = T,cluster_rows = T)

  

图6 改变横向和纵向字体的大小

设置横向纵向的树高;treeheight_col = 20,treeheight_row = 15(图7)
p<-pheatmap(data,scale="row",border="white",cluster_cols = T,treeheight_col = 20,cluster_rows = T,treeheight_row = 15)
p<-pheatmap(data,scale="row",border="white",cluster_cols = T,treeheight_col = 20,cluster_rows = T,treeheight_row = 20)

  

图7 设置横向和纵向聚类热图的树形高度

R包pheatmap:用参数一步步详细绘制热图的更多相关文章

  1. pheatmap绘制“热图”,你需要的都在这

    热图可以聚合大量的数据,并可以用一种渐进色来优雅地表现,可以很直观地展现数据的疏密程度或频率高低. 本文利用R语言 pheatmap 包从头开始绘制各种漂亮的热图.参数像积木,拼凑出你最喜欢的热图即可 ...

  2. 用R包中heatmap画热图

    一:导入R包及需要画热图的数据 library(pheatmap) data<- read.table("F:/R练习/R测试数据/heatmapdata.txt",head ...

  3. R语言学习 - 热图简化

    绘制热图除了使用ggplot2,还可以有其它的包或函数,比如pheatmap::pheatmap (pheatmap包中的pheatmap函数).gplots::heatmap.2等.   相比于gg ...

  4. [R] 如何绘制各样本的pathway丰度热图?

    前言 一般而言,我们做完pathway富集分析,就做下气泡图或bar图来进行展示,但它们实际上只考虑了富集因子和Pvalue.如果我们不关注这两个因素,而是在乎样本本身的pathway丰度呢? 对于K ...

  5. 在 R 中估计 GARCH 参数存在的问题(基于 rugarch 包)

    目录 在 R 中估计 GARCH 参数存在的问题(基于 rugarch 包) 导论 rugarch 简介 指定一个 \(\text{GARCH}(1, 1)\) 模型 模拟一个 GARCH 过程 拟合 ...

  6. 如何创建R包并将其发布在 CRAN / GitHub 上--转载

    转载--https://www.analyticsvidhya.com/blog/2017/03/create-packages-r-cran-github/ 什么是 R 包?我开始创建 R 包的原因 ...

  7. Linux 安装R包

    https://www.cnblogs.com/jessepeng/p/10984983.html Linux 的R环境,可以通过anaconda jupyter notbook很容易的配置,见我之前 ...

  8. Linux环境下R和R包安装及其管理

    前言 R对windows使用很友好,对Linux来说充满了敌意.小数据可以在windows下交互操作,效果很好很棒.可是当我们要处理大数据,或者要在集群上搭建pipeline时,不得不面对在Linux ...

  9. R包介绍

    R语言的使用,很大程度上是借助各种各样的R包的辅助,从某种程度上讲,R包就是针对于R的插件,不同的插件满足不同的需求,截至2013年3月6日,CRAN已经收录了各类包4338个. 一. R语言包的安装 ...

  10. R(三): R包原理及安装

    包(package)是多个函数的集合,常作为分享代码的基本单元,代码封装成包可以方便其他用户使用.越来越多的R包正在由世界上不同的人所创建并分发,这些分发的R包,可以从CRAN 或 github 上获 ...

随机推荐

  1. Pycharm或cmd在Terminal中运行tensorboard、pip等python包

    这个主要是添加python包的路径到环境变量里 因为装了anaconda,所以我们要找的是对应虚拟环境里的包路径,一般是放在anaconda安装路径下的anaconda3\envs\环境名\Scrip ...

  2. Linux下挂载NTFS格式的U盘

    NTFS是Windows下的格式,在Linux下是识别不了的,要想在Linux上挂载NTFS格式的U盘需要安装软件以提供支持.软件名为ntfs-3g. 1.下载安装包 https://tuxera.c ...

  3. AtCoder Beginner Contest 302 H. Ball Collector 题解 可撤销并查集

    为了更好的阅读体验,请单击这里 AtCoder Beginner Contest 302 H. Ball Collector 题意跳过. 可以视作将 \(a_i, b_i\) 之间连了一条边,然后 \ ...

  4. java实现微信登录

    前言 上一篇做了php的微信登录,所以也总结一下Java的微信授权登录并获取用户信息这个功能的开发流程. 配置 配置什么的就不多说了,详细的配置可以直接前往我上一篇查看. https://www.cn ...

  5. vba--将excel单元格格式改为常规格式

    Sub 改格式() ActiveWorkbook.activesheet.Select For Each Rng In ActiveSheet.UsedRange With Rng .NumberFo ...

  6. mapreduce的shuffle机制

    1.1 概述: mapreduce中,map阶段处理的数据如何传递给reduce阶段,是mapreduce框架中最关键的一个流程,这个流程就叫shuffle:(从map的输出到reduce的输入) s ...

  7. C#中?.、??、?:、及?等符号用途

    1.可空类型修饰符(?)   众所周知,在C#中引用类型可以使用一个null引用来表示一个不存在的值,比如 string str = null 是正确的: 但是值类型却不能为空,比如 int k = ...

  8. 金蝶云·苍穹追光者开发大赛,点燃高校AI应用创新之火

    在 2024 年的政府工作报告中,"人工智能 +" 行动被提出,标志着人工智能成为推动我国新质生产力发展的关键力量.与此同时,今年的高考作文有一道题目也聚焦于人工智能,再次凸显了这 ...

  9. Solo 开发者周刊 (第10期):Sora 之后,谁是被遗忘的?谁又是被仰望的?

    这里会整合 Solo 社区每周推广内容.产品模块或活动投稿,每周五发布.在这期周刊中,我们将深入探讨开源软件产品的开发旅程,分享来自一线独立开发者的经验和见解.本杂志开源,欢迎投稿. 好文推荐 Sol ...

  10. [rCore学习笔记 04]安装SSH

    因为每一个老嵌入式都喜欢使用他的老windows进行开发,因此我决定使用SSH来开发rust,这样也不用在虚拟机里边再装一个vscode. 参考博客 如何在windows下使用vscode连接linu ...