經常會想到用熱圖來展示某個基因或某些基因的表達量問題,今天用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 設置橫向和縱向聚類熱圖的樹形高度