R绘图|heatmap

# 1.设置工作目录及调用R包
setwd("D://heatmap") 
library(vegan)
library(RColorBrewer)
library(gplots)
library(permute)
library(lattice)

图1 原始数据文件格式。行名为样地名,列名为物种名。

# 2. 读入数据
dir()
aoa=read.csv("Aspe.csv",header=TRUE,row.names = 1)
AOA=t(aoa) # 转置数据表,将样本名作为行名
AOA

图2 绘图使用数据格式

# 3. 样本间聚类热图
sim=cor(AOA,method="pearson")
sim
AOA.plot=heatmap.2(sim, Rowv=TRUE, Colv=TRUE, dendrogram='both', trace='none', margins=c(6,6), col=rev(colorRampPalette(brewer.pal(11, "RdYlGn"))(256)),density.info="none") 
AOA.plot

注:legend.txt设置图例内容,args.legend设置图例位置和大小,xaxt设置横轴坐标是否显示,col设置颜色,ylab设置纵坐标标题内容,cex.axis设置坐标字体大小。labels设置添加的坐标内容,cex.axis设置坐标字体大小,font设置字体,side设置添加的坐标轴位置,las设置字体方向。

图3 样本间聚类热图。

# 4. 样品和物种间聚类热图
aoa=as.matrix(aoa)# 用于解决“'x'必需为数值矩阵”报错
spe.dist<-vegdist(aoa,method="bray")
sam.dist<-vegdist(t(aoa),method="bray") # 计算距离矩阵
pdf(file="heatmap.pdf",width=4,height=5) # 保存为pdf格式
heatmap(aoa,clustering_distance_rows = spe.dist, clustering_distance_cols = sam.dist, cexCol=1,cexRow=1.5,clustering_method ="average",main ="Heatmap")
dev.off()

NOTE:cexCol和cexRow设置热图横纵坐标标签字符大小。

图4 样品和物种间聚类热图。

# 5. 绘制树状聚类图
aoa.dist<-vegdist(aoa,method="bray") # 计算距离矩阵
aoa.dist.hc<-hclust(aoa.dist,"ave")
plot(aoa.dist.hc) # 绘图,枝长代表距离
plot(aoa.dist.hc,hang=-1) # 枝末端对齐
#translate
aoa.dendro<-as.dendrogram(aoa.dist.hc)
plot(aoa.dendro,horiz=TRUE)

图5 树状聚类图。

图6 枝末端对齐聚类树。

图7 水平树状聚类图。

其实,想要用R绘制好看的图,还是要调整函数的参数,大家绘图的时候多看函数的帮助信息,了解各个参数的含义,好自己进行修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值