Search
Question: Drawing a HeatMapList while retaining the original row order of each heat map
0
19 months ago by
d r150
Israel
d r150 wrote:

The ComplexHeatmap documenation, under 'Making a list of Heatmaps' states that:

"Under default mode, dendrograms from the second heatmap will be removed and row orders will be same as the first one."

Is it possible to draw multiple heatmaps from a HeatMapList side by side while retaining the original dendrogram and row order of each heatmap?

I know I can display the row order of each heatmap at a time by modifying the main_heatmap parameter, e.g.:

draw(ht1+ht2,main_heatmap='ht1')

draw(ht1+ht2,main_heatmap='ht2')

But since I am interested in comparing the row order of the same data under different clustering methods, it would be much more convenient if I could draw the two heatmaps side by side.

I tried using:

layout(mat=matrix(1,2,ncol=2))

draw(ht1)

draw(ht2)

But it seems that draw() suppress layout().

Dolev Rahat

modified 19 months ago by Steve Lianoglou12k • written 19 months ago by d r150
0
19 months ago by
Denali
Steve Lianoglou12k wrote:

While I'm definitely no authority on the subject, it seems doubtful given how it seems rowAnnotations work in the context of a HeatmapList.

If you're working outside of RStudio, you might consider just creating independent graphics devices and plotting your different heatmaps in each one to compare (ie. use call dev.new() before creating each heatmap ... or save three files and open them up and compare externally.

All that having been said, the author of the ComplexHeatmap package has provided an insane amount of functionality already, and I wouldn't discount the possibility he's got something else hiding up his sleeve :-)