I'm trying to produce a heatmap only with my DGE from NOISeq.
I'm working with ComplexHeatmap, and already produced a nice looking heatmap with annotations (pipeline below) but, the heatplot produced utilize random transcripts between 1 and 1324 (my number of DGE) even if they're not significant (prob <0.05)
My pipeline is:
mat = mynoiseq2[sample(nrow(mynoiseq.deg), nrow(mynoiseq.deg)), colnames(mynoiseq2)] mat_scaled = t(apply(mat, 1, scale)) hb = HeatmapAnnotation(barplot = anno_boxplot(mat2)) hc = HeatmapAnnotation(barplot = anno_points(rnorm(10)) Heatmap(mat_scaled, col=rev(rainbow(10)), show_row_names=FALSE, cluster_columns=FALSE, cluster_rows=FALSE, bottom_annotation = hc, top_annotation=hb)
Where "mynoiseq2" is my total data.frame with groups and reads (3774 transcripts), mynoiseq.deg is my DGE with groups mean, theta, prob and LFC values.
i'm trying to plot a heatmap based on value of P + DGE + Column names, i already make something like that on edgeR with:
heatmap(log(normCounts[de[1:352],]+1),Colv=NA, ylab="Genes", labRow=F, margins=c(2,2))
Where 352 is the number of my DGE and de is my data.frame with them. With DESeq2, i make this process through:
de <- rownames(res[res$padj<0.05 & !is.na(res$padj), ]) de_mat <- assay(rld)[de,] heatmap(de_mat, Colv=NA, ylab="Genes", labRow=F, margins=c(2,2))
But now i need a more complex heatmap with the same criterea (only DGEs plotted with P or even reads + log where i can show the pattern of expression from DGE)
TY for your attention!