[BioC] heatmap for high number of genes

Steve Lianoglou mailinglist.honeypot at gmail.com
Tue Mar 2 22:37:21 CET 2010

Hi Avehna,

On Tue, Mar 2, 2010 at 4:01 PM, avehna <avhena at gmail.com> wrote:
> Hi All:
> I would like to display all the differentially expressed genes that I got
> for 4 different treatments (respect to the control) onto a heatmap plot, in
> such a way that they're ordered respect to their expression values. My
> questions are:
> 1- Is there a way to make a heatmap for around 10000 genes (the "union" set
> from all differentially expressed genes) without taking so long in
> Bioconductor ('cause my computer is getting frozen).
> 2- How could I order the gene expression profiles from high to low
> expression values. (I guess in this case I should take into account one of
> the treatment). I'd like to get a beautiful heatmap from red to blue (for
> example).

The heatmap is taking so long because its calculating the pairwise
similarity of the genes (rows) of your matrix in order to
group/cluster them.

It sounds like you don't *want* heatmap to cluster the genes, because
you want them to be displayed in a very specific and pre-determined
order (high to low ... something?), so calculating this row-wise
clustering is exactly what you don't want to do.

You didn't mention which heatmap function you're using, but lets
assume you're using the gplots::heatmap.2 function, you can set its
"Rowv" parameter to FALSE, and it won't (shouldn't) reorder cluster
your matrix by rows.

Just ensure that you reorder the rows of your input matrix (let's call
it X) the way you want, then just:

R> heatmap.2(X, Rowv=FALSE, ...)

That should go much faster.


Steve Lianoglou
Graduate Student: Computational Systems Biology
 | Memorial Sloan-Kettering Cancer Center
 | Weill Medical College of Cornell University
Contact Info: http://cbio.mskcc.org/~lianos/contact

More information about the Bioconductor mailing list