# Heatmap
```
library("gplots")
library("RColorBrewer")
deg.df <- read.delim(file="Annotation_deseq.txt.txt",
sep="\t",
header=TRUE,
stringsAsFactors = FALSE)
subset.deg.df <- subset(deg.df, (((logFC >= 2) | (logFC <= -2) ) & (FDR <=0.05)) )
sel_columns <- sort(
setdiff( colnames(subset.deg.df),
c("ID", "prot", "symbol", "Description", "logFC", "PValue", "FDR")
)
)
expression_data <- as.matrix( subset.deg.df[,sel_columns] )
rownames(expression_data) <- subset.deg.df$Description
write.table(subset.deg.df, file="./DEGS.xlsx", col.names=FALSE, row.names=FALSE, sep="\t", quote=FALSE)
my_palette <- colorRampPalette(c("red", "yellow", "green"))(n = 299)
expression_data_to_plot <- log2(expression_data+1)
retval <- expression_data_to_plot
retval$rowMeans <- rm <- rowMeans(expression_data_to_plot, na.rm = TRUE)
expression_data_to_plot <- sweep(expression_data_to_plot, 1, rm)
retval$rowSDs <- sx <- apply(expression_data_to_plot, 1, sd, na.rm = TRUE)
scaled_expression_data_to_plot <- sweep(expression_data_to_plot, 1, sx, "/")
col_breaks = c(seq(-1,-0.5,length=100), # for red
seq(-0.49,0.5,length=100), # for yellow
seq(0.51,1,length=100)) # for green
png("./DEG/heatmap_DEGS.png", # cria arquivo do tipo PNG for the heat map
width = 5*300, # 5 x 300 pixels de largura
height = 5*300, # 5 x 300 pixels de altura
res = 300, # 300 pixels por polegada
pointsize = 8) # tamanho da fonte
heatmap.2(scaled_expression_data_to_plot, # a matriz com os valores de expressão
main = "Correlation distance (z-score)", # Título do HeatMap
density.info="none", # desabilita o gráfico de densidade dentro da legenda
trace="none", # desabilita as linhas dentro do HeatMap
margins =c(12,12), # definiação das margens no entorno do gráfico
col=my_palette, # nome do objeto contendo a paleta de cores criada anteriormente
breaks=col_breaks, # pontos de quebra para a transição de cores
symbreaks=TRUE,
dendrogram="both", # desenhar dendrograma para linhas e colunas
distfun = function(x) as.dist(1-cor(t(x))), # distância baseada em correlação
hclustfun = function(x) hclust(x, method="centroid") # método de ligação pelo centróide
)
dev.off() # fecha o arquivo da imagem PNG
```