SCI,CCF,EI及核心期刊绘图宝典,爆款持续更新,助力科研!
本期分享:
【SCI绘图】【热力图系列2 R】多特征相关性分析热力图指定聚类 R
1.环境准备
library(gplots)
library(RColorBrewer)
2.数据读取
#########################################################
### reading in data and transform it to matrix format
#########################################################data <- read.csv("dataset.csv", comment.char="#")
rnames <- data[,1] # assign labels in column 1 to "rnames"
mat_data <- data.matrix(data[,2:ncol(data)]) # transform column 2-5 into a matrix
rownames(mat_data) <- rnames # assign row names
3.绘图展示
#########################################################
### customizing and plotting heatmap
########################################################## creates a own color palette from red to green
my_palette <- colorRampPalette(c("red", "yellow", "green"))(n = 299)# creates a 5 x 5 inch image
png("h3_categorizing.png",width = 5*300, # 5 x 300 pixelsheight = 5*300,res = 300, # 300 pixels per inchpointsize = 8) # smaller font sizeheatmap.2(mat_data,cellnote = mat_data, # same data set for cell labelsRowSideColors = c( # grouping row-variables into differentrep("gray", 3), # categories, Measurement 1-3: greenrep("blue", 3), # Measurement 4-6: bluerep("black", 4)), # Measurement 7-10: redmain = "Categories", # heat map titlenotecol="black", # change font color of cell labels to blackdensity.info="none", # turns off density plot inside color legendtrace="none", # turns off trace lines inside the heat mapmargins =c(12,9), # widens margins around plotcol=my_palette, # use on color palette defined earlier dendrogram="row", # only draw a row dendrogramColv="NA") # turn off column clustering# adding a color legend for the categories
par(lend = 1) # square line ends for the color legend
legend("topright", # location of the legend on the heatmap plotlegend = c("category1", "category2", "category3"), # category labelscol = c("gray", "blue", "black"), # color keylty = 1, # line stylelwd = 10, # line width)dev.off()