I want to plot a heatmap where the x-axis is clustered by "normal" and "KIRP" from left to right. Currently, my code clusters by dendrogram/similarity, and unfortunately I have one outlier "KIRP" on the left-most. I want to move this "KIRP" sample so that it appears after all the "normal" samples. Nevertheless, both groups "normal" and "KIRP" should still be clustered and arranged based on group similarity.
[![enter image description here][1]][1]
Code:
dge <- DGEList(counts=mat, group=group)
keep <- filterByExpr(dge)
v <- voom(mat, design, plot=TRUE)
vfit <- lmFit(v, design)
vfit <- contrasts.fit(vfit, contrasts=contrasts)
efit <- eBayes(vfit)
tfit <- treat(vfit, lfc=1)
dt <- decideTests(tfit)
de.common <- which(dt[,1]!=0)
kirp.vs.normal <- topTreat(tfit, coef=1, n=Inf)
topgenes <- rownames(kirp.vs.normal)[1:150]
i <- which(rownames(dge) %in% topgenes)
mycol <- colorpanel(1000,"#FFA500","white","#2E2787")
heatmap.2(lcpm[i,], scale="row",
labRow=rownames(dge)[i], labCol=group,
col=mycol, trace="none", density.info="none",
margin=c(8,1), lhei=c(2,10), dendrogram="column", main="Differential Gene Expression in\nNormal vs KIRP Type II CIMP samples", cex.main=0.3, lmat=rbind(c(0,3,4), c(2,1,0)), lwid=c(0.5,10,3))
Data:
dput(dge[1:50,1:50])
new("DGEList", .Data = list(structure(c(2L, 47L, 5L, 185L, 124L,
272L, 197L, 405L, 59L, 258L, 270L, 226L, 112L, 322L, 381L, 281L,
145L, 53L, 325L, 107L, 103L, 375L, 70L, 298L, 131L, 79L, 297L,
2L, 345L, 390L, 113L, 289L, 58L, 400L, 389L, 414L, 228L, 188L,
392L, 222L, 86L, 355L, 20L, 49L, 211L, 311L, 96L, 304L, 378L,
145L, 3L, 363L, 199L, 22L, 313L, 305L, 182L, 338L, 32L, 266L,
314L, 35L, 384L, 361L, 37L, 241L, 4L, 340L, 356L, 26L, 100L,
212L, 27L, 273L, 25L, 43L, 355L, 5L, 211L, 155L, 372L, 253L,
180L, 380L, 105L, 13L, 242L, 221L, 401L, 215L, 197L, 233L, 345L,
136L, 254L, 183L, 111L, 390L, 392L, 298L, 1L, 308L, 89L, 118L,
306L, 219L, 50L, 100L, 352L, 286L, 229L, 340L, 135L, 194L, 130L,
124L, 323L, 54L, 105L, 279L, 91L, 99L, 391L, 291L, 395L, 83L,
353L, 1L, 322L, 185L, 196L, 263L, 33L, 274L, 362L, 265L, 234L,
356L, 297L, 154L, 81L, 65L, 293L, 144L, 2L, 132L, 270L, 360L,
371L, 5L, 2L, 95L, 1L, 93L, 248L, 317L, 269L, 373L, 71L, 192L,
375L, 340L, 60L, 108L, 42L, 128L, 3L, 292L, 312L, 173L, 363L,
178L, 17L, 387L, 143L, 329L, 385L, 2L, 252L, 118L, 413L, 16L,
87L, 339L, 88L, 75L, 347L, 184L, 337L, 297L, 136L, 229L, 85L,
358L, 8L, 283L, 162L, 316L, 45L, 7L, 1L, 319L, 2L, 117L, 137L,
199L, 300L, 114L, 291L, 92L, 125L, 168L, 153L, 238L, 3L, 259L,
192L, 360L, 125L, 230L, 80L, 262L, 34L, 266L, 220L, 237L, 272L,
1L, 326L, 38L, 350L, 273L, 352L, 320L, 45L, 218L, 209L, 224L,
288L, 145L, 372L, 192L, 307L, 203L, 2L, 277L, 280L, 233L, 368L,
6L, 2L, 83L, 2L, 192L, 141L, 297L, 203L, 338L, 323L, 210L, 289L,
275L, 91L, 263L, 3L, 4L, 2L, 28L, 259L, 264L, 317L, 198L, 361L,
365L, 373L, 312L, 300L, 2L, 283L, 63L, 123L, 324L, 286L, 251L,
253L, 104L, 284L, 143L, 371L, 237L, 325L, 314L, 16L, 208L, 1L,
191L, 134L, 279L, 348L, 180L, 2L, 126L, 1L, 369L, 368L, 377L,
305L, 314L, 38L, 24L, 407L, 223L, 320L, 66L, 3L, 136L, 2L, 240L,
404L, 227L, 336L, 356L, 403L, 49L, 195L, 260L, 365L, 2L, 405L,
350L, 302L, 351L, 11L, 358L, 225L, 37L, 340L, 132L, 380L, 276L,
146L, 80L, 200L, 328L, 2L, 317L, 184L, 269L, 304L, 280L, 3L,
147L, 4L, 183L, 279L, 198L, 69L, 90L, 337L, 192L, 9L, 173L, 201L,
265L, 2L, 237L, 291L, 392L, 96L, 287L, 30L, 78L, 383L, 317L,
325L, 333L, 275L, 1L, 354L, 12L, 37L, 245L, 378L, 316L, 51L,
284L, 223L, 330L, 308L, 113L, 44L, 321L, 298L, 92L, 4L, 18L,
241L, 269L, 336L, 22L, 1L, 272L, 4L, 114L, 134L, 224L, 315L,
72L, 361L, 200L, 135L, 269L, 98L, 260L, 4L, 42L, 4L, 371L, 148L,
168L, 110L, 323L, 48L, 271L, 33L, 49L, 345L, 2L, 285L, 95L, 79L,
277L, 38L, 327L, 352L, 124L, 230L, 189L, 283L, 160L, 54L, 220L,
357L, 211L, 2L, 287L, 273L, 275L, 339L, 2L, 2L, 302L, 203L, 210L,
190L, 276L, 351L, 51L, 361L, 155L, 232L, 213L, 184L, 330L, 130L,
56L, 342L, 79L, 209L, 178L, 163L, 86L, 375L, 337L, 96L, 286L,
335L, 5L, 382L, 398L, 116L, 322L, 16L, 268L, 40L, 261L, 229L,
263L, 359L, 181L, 117L, 71L, 400L, 113L, 1L, 390L, 23L, 329L,
284L, 5L, 1L, 330L, 3L, 40L, 102L, 200L, 269L, 67L, 284L, 149L,
186L, 145L, 93L, 296L, 4L, 321L, 1L, 35L, 53L, 148L, 57L, 283L,
366L, 280L, 85L, 43L, 357L, 1L, 304L, 9L, 41L, 259L, 326L, 310L,
106L, 153L, 229L, 214L, 243L, 172L, 30L, 289L, 331L, 174L, 111L,
359L, 273L, 294L, 365L, 4L, 3L, 379L, 10L, 171L, 216L, 301L,
151L, 70L, 40L, 34L, 394L, 245L, 390L, 142L, 3L, 146L, 10L, 341L,
154L, 35L, 263L, 65L, 387L, 356L, 23L, 290L, 24L, 1L, 227L, 91L,
323L, 389L, 376L, 275L, 55L, 369L, 328L, 257L, 256L, 304L, 102L,
57L, 62L, 336L, 7L, 217L, 187L, 310L, 401L, 10L, 2L, 284L, 2L,
141L, 222L, 278L, 376L, 67L, 342L, 276L, 142L, 179L, 74L, 310L,
253L, 228L, 8L, 14L, 193L, 190L, 89L, 62L, 40L, 330L, 184L, 283L,
324L, 2L, 244L, 390L, 183L, 277L, 402L, 357L, 388L, 156L, 256L,
255L, 343L, 114L, 79L, 38L, 361L, 167L, 2L, 301L, 375L, 262L,
356L, 205L, 1L, 111L, 1L, 58L, 109L, 315L, 210L, 23L, 18L, 218L,
36L, 268L, 285L, 301L, 7L, 186L, 8L, 258L, 142L, 130L, 291L,
335L, 71L, 19L, 16L, 385L, 69L, 2L, 276L, 375L, 128L, 42L, 369L,
333L, 91L, 318L, 371L, 225L, 270L, 226L, 31L, 329L, 106L, 224L,
2L, 172L, 88L, 292L, 35L, 143L, 2L, 23L, 2L, 74L, 207L, 257L,
357L, 27L, 341L, 124L, 202L, 72L, 86L, 237L, 7L, 287L, 3L, 44L,
224L, 221L, 116L, 35L, 30L, 305L, 71L, 337L, 350L, 1L, 365L,
353L, 62L, 292L, 17L, 288L, 21L, 143L, 228L, 253L, 271L, 178L,
39L, 382L, 363L, 238L, 6L, 137L, 374L, 331L, 346L, 100L, 1L,
26L, 114L, 270L, 218L, 370L, 151L, 361L, 48L, 121L, 345L, 68L,
280L, 308L, 326L, 217L, 2L, 234L, 93L, 40L, 73L, 102L, 85L, 265L,
335L, 301L, 375L, 1L, 163L, 201L, 123L, 260L, 109L, 357L, 208L,
319L, 286L, 108L, 252L, 284L, 184L, 181L, 235L, 240L, 2L, 56L,
194L, 248L, 20L, 232L, 1L, 379L, 4L, 39L, 188L, 291L, 352L, 17L,
363L, 57L, 177L, 215L, 127L, 300L, 3L, 112L, 5L, 23L, 77L, 199L,
32L, 385L, 47L, 311L, 139L, 277L, 346L, 1L, 305L, 60L, 162L,
284L, 13L, 332L, 36L, 159L, 224L, 230L, 304L, 228L, 53L, 376L,
371L, 190L, 2L, 366L, 380L, 258L, 386L, 132L, 2L, 34L, 5L, 120L,
375L, 338L, 126L, 41L, 24L, 173L, 33L, 387L, 54L, 146L, 198L,
292L, 6L, 15L, 226L, 267L, 333L, 153L, 335L, 57L, 380L, 148L,
32L, 3L, 349L, 189L, 298L, 49L, 403L, 350L, 88L, 94L, 343L, 260L,
322L, 311L, 92L, 80L, 371L, 388L, 1L, 274L, 73L, 47L, 280L, 229L,
1L, 316L, 1L, 118L, 261L, 254L, 347L, 58L, 388L, 209L, 264L,
298L, 56L, 288L, 365L, 227L, 365L, 321L, 179L, 92L, 86L, 135L,
35L, 279L, 133L, 190L, 353L, 2L, 314L, 93L, 223L, 329L, 45L,
379L, 16L, 211L, 216L, 262L, 306L, 202L, 108L, 90L, 319L, 204L,
4L, 273L, 381L, 332L, 15L, 118L, 3L, 211L, 138L, 48L, 255L, 302L,
283L, 22L, 368L, 29L, 228L, 363L, 405L, 309L, 58L, 350L, 286L,
301L, 78L, 159L, 65L, 149L, 399L, 306L, 74L, 198L, 336L, 1L,
327L, 91L, 312L, 259L, 108L, 345L, 168L, 70L, 251L, 221L, 314L,
253L, 169L, 97L, 231L, 177L, 4L, 325L, 291L, 293L, 386L, 138L,
2L, 181L, 1L, 10L, 214L, 292L, 311L, 28L, 382L, 163L, 262L, 347L,
77L, 242L, 404L, 340L, 9L, 416L, 232L, 168L, 157L, 95L, 14L,
297L, 303L, 113L, 354L, 129L, 313L, 70L, 190L, 296L, 67L, 355L,
17L, 103L, 266L, 257L, 377L, 226L, 98L, 132L, 345L, 241L, 7L,
108L, 54L, 320L, 395L, 205L, 196L, 265L, 3L, 140L, 257L, 190L,
74L, 95L, 315L, 177L, 151L, 130L, 169L, 235L, 5L, 188L, 311L,
9L, 72L, 277L, 23L, 16L, 354L, 302L, 378L, 353L, 229L, 2L, 338L,
19L, 156L, 262L, 352L, 288L, 274L, 228L, 200L, 351L, 310L, 127L,
28L, 355L, 237L, 78L, 2L, 385L, 273L, 304L, 330L, 1L, 2L, 377L,
138L, 141L, 22L, 286L, 318L, 399L, 38L, 230L, 97L, 295L, 57L,
312L, 2L, 263L, 4L, 385L, 240L, 149L, 58L, 24L, 45L, 300L, 104L,
263L, 367L, 1L, 319L, 100L, 169L, 298L, 36L, 383L, 130L, 91L,
241L, 159L, 320L, 233L, 120L, 347L, 351L, 194L, 4L, 372L, 355L,
329L, 394L, 8L, 3L, 110L, 1L, 311L, 143L, 373L, 178L, 181L, 379L,
393L, 307L, 274L, 121L, 86L, 277L, 3L, 202L, 365L, 124L, 378L,
374L, 107L, 348L, 57L, 370L, 304L, 18L, 139L, 255L, 325L, 286L,
13L, 391L, 293L, 46L, 271L, 345L, 116L, 372L, 242L, 213L, 248L,
149L, 295L, 4L, 106L, 263L, 303L, 279L, 119L, 2L, 262L, 2L, 242L,
373L, 304L, 246L, 216L, 18L, 265L, 255L, 199L, 30L, 291L, 6L,
357L, 133L, 359L, 168L, 266L, 80L, 114L, 352L, 15L, 157L, 389L,
61L, 40L, 60L, 273L, 91L, 130L, 156L, 329L, 387L, 292L, 397L,
403L, 323L, 301L, 215L, 332L, 177L, 375L, 9L, 161L, 181L, 330L,
335L, 254L, 2L, 178L, 120L, 70L, 49L, 352L, 287L, 351L, 368L,
214L, 389L, 221L, 44L, 60L, 2L, 121L, 272L, 363L, 36L, 388L,
284L, 63L, 38L, 57L, 47L, 263L, 342L, 237L, 312L, 300L, 228L,
22L, 373L, 201L, 116L, 77L, 347L, 168L, 318L, 257L, 107L, 27L,
61L, 326L, 5L, 390L, 229L, 349L, 279L, 120L, 1L, 205L, 6L, 108L,
141L, 129L, 47L, 83L, 327L, 23L, 54L, 184L, 181L, 249L, 188L,
143L, 188L, 102L, 107L, 228L, 35L, 82L, 343L, 290L, 12L, 311L,
232L, 1L, 339L, 53L, 159L, 212L, 346L, 239L, 316L, 305L, 158L,
313L, 280L, 139L, 40L, 68L, 320L, 84L, 4L, 143L, 276L, 275L,
310L, 2L, 1L, 147L, 1L, 339L, 67L, 301L, 117L, 329L, 347L, 372L,
276L, 258L, 24L, 310L, 1L, 5L, 1L, 335L, 368L, 47L, 74L, 209L,
262L, 83L, 371L, 28L, 341L, 1L, 305L, 31L, 9L, 357L, 325L, 259L,
30L, 313L, 344L, 216L, 311L, 210L, 100L, 48L, 234L, 330L, 6L,
19L, 285L, 350L, 275L, 180L, 8L, 128L, 2L, 120L, 162L, 266L,
309L, 35L, 375L, 83L, 192L, 258L, 147L, 202L, 142L, 41L, 2L,
313L, 9L, 197L, 126L, 75L, 368L, 323L, 14L, 199L, 63L, 5L, 380L,
91L, 114L, 311L, 29L, 296L, 301L, 203L, 276L, 246L, 335L, 182L,
45L, 11L, 387L, 215L, 1L, 15L, 383L, 364L, 332L, 7L, 2L, 132L,
2L, 116L, 130L, 218L, 321L, 47L, 351L, 264L, 192L, 171L, 126L,
227L, 2L, 363L, 229L, 379L, 210L, 188L, 154L, 285L, 11L, 314L,
338L, 177L, 323L, 2L, 362L, 382L, 49L, 237L, 375L, 310L, 244L,
185L, 254L, 241L, 346L, 111L, 27L, 230L, 383L, 175L, 2L, 232L,
386L, 284L, 287L, 1L, 1L, 347L, 9L, 95L, 285L, 339L, 245L, 397L,
91L, 229L, 298L, 26L, 396L, 385L, 401L, 24L, 8L, 347L, 264L,
122L, 146L, 128L, 28L, 306L, 93L, 390L, 415L, 2L, 300L, 207L,
262L, 287L, 127L, 51L, 230L, 43L, 297L, 194L, 348L, 209L, 213L,
193L, 365L, 165L, 3L, 69L, 17L, 342L, 382L, 131L, 2L, 328L, 128L,
109L, 207L, 199L, 305L, 43L, 357L, 269L, 207L, 209L, 162L, 251L,
4L, 195L, 190L, 104L, 275L, 153L, 117L, 302L, 51L, 307L, 69L,
358L, 341L, 4L, 283L, 359L, 46L, 238L, 12L, 293L, 312L, 212L,
215L, 271L, 348L, 136L, 15L, 353L, 52L, 174L, 190L, 18L, 123L,
321L, 335L, 1L, 2L, 301L, 5L, 365L, 226L, 285L, 206L, 28L, 395L,
297L, 245L, 13L, 75L, 281L, 32L, 324L, 7L, 393L, 94L, 181L, 125L,
153L, 368L, 268L, 10L, 191L, 369L, 1L, 326L, 180L, 188L, 314L,
58L, 375L, 53L, 122L, 236L, 235L, 265L, 207L, 156L, 165L, 313L,
171L, 5L, 385L, 256L, 276L, 29L, 129L, 1L, 216L, 128L, 72L, 117L,
233L, 287L, 378L, 353L, 204L, 80L, 257L, 65L, 315L, 190L, 201L,
227L, 12L, 198L, 146L, 103L, 15L, 48L, 280L, 155L, 308L, 359L,
1L, 253L, 144L, 19L, 288L, 49L, 329L, 119L, 113L, 200L, 151L,
284L, 196L, 102L, 295L, 358L, 240L, 128L, 241L, 281L, 264L, 349L,
3L, 2L, 20L, 3L, 131L, 144L, 180L, 356L, 57L, 331L, 232L, 175L,
199L, 114L, 215L, 191L, 74L, 5L, 88L, 144L, 202L, 135L, 355L,
30L, 283L, 291L, 98L, 350L, 1L, 371L, 26L, 251L, 288L, 398L,
270L, 353L, 93L, 237L, 225L, 333L, 174L, 45L, 8L, 391L, 197L,
6L, 65L, 330L, 346L, 367L, 122L, 1L, 244L, 2L, 95L, 191L, 166L,
360L, 63L, 305L, 118L, 182L, 172L, 110L, 236L, 6L, 17L, 6L, 365L,
237L, 173L, 52L, 322L, 23L, 290L, 373L, 354L, 307L, 1L, 340L,
47L, 97L, 273L, 329L, 284L, 316L, 203L, 219L, 253L, 315L, 142L,
377L, 325L, 321L, 274L, 2L, 40L, 336L, 321L, 351L, 1L, 4L, 236L,
5L, 278L, 195L, 243L, 348L, 40L, 9L, 230L, 215L, 364L, 39L, 196L,
58L, 332L, 114L, 297L, 130L, 165L, 65L, 151L, 75L, 288L, 322L,
200L, 380L, 4L, 227L, 198L, 217L, 233L, 111L, 276L, 293L, 167L,
211L, 303L, 287L, 160L, 128L, 177L, 308L, 147L, 1L, 136L, 376L,
274L, 335L, 176L, 1L, 397L, 1L, 46L, 137L, 315L, 271L, 373L,
393L, 323L, 196L, 232L, 351L, 130L, 207L, 174L, 1L, 197L, 229L,
123L, 228L, 368L, 36L, 383L, 140L, 322L, 342L, 2L, 200L, 345L,
336L, 294L, 249L, 227L, 276L, 88L, 307L, 119L, 390L, 234L, 70L,
46L, 64L, 241L, 205L, 132L, 208L, 270L, 343L, 13L, 1L, 221L,
1L, 168L, 38L, 266L, 333L, 272L, 358L, 335L, 79L, 241L, 110L,
33L, 1L, 1L, 2L, 41L, 295L, 165L, 287L, 368L, 332L, 337L, 357L,
30L, 284L, 117L, 324L, 356L, 162L, 309L, 270L, 306L, 49L, 7L,
282L, 155L, 12L, 194L, 68L, 259L, 208L, 85L, 1L, 214L, 63L, 252L,
305L, 117L, 1L, 398L, 131L, 399L, 221L, 323L, 142L, 373L, 397L,
262L, 277L, 389L, 315L, 324L, 98L, 393L, 8L, 190L, 285L, 58L,
56L, 194L, 87L, 340L, 192L, 239L, 382L, 1L, 246L, 400L, 254L,
269L, 161L, 314L, 148L, 146L, 276L, 200L, 334L, 284L, 185L, 147L,
341L, 140L, 203L, 280L, 16L, 330L, 392L, 325L, 6L, 271L, 6L,
75L, 241L, 205L, 14L, 108L, 363L, 190L, 148L, 269L, 169L, 226L,
6L, 34L, 137L, 398L, 234L, 276L, 104L, 381L, 355L, 341L, 12L,
322L, 325L, 1L, 360L, 123L, 224L, 291L, 400L, 301L, 285L, 245L,
232L, 359L, 344L, 145L, 64L, 369L, 272L, 194L, 4L, 26L, 326L,
309L, 323L, 6L, 1L, 376L, 2L, 102L, 109L, 202L, 298L, 72L, 366L,
230L, 213L, 221L, 84L, 242L, 2L, 339L, 8L, 42L, 247L, 204L, 111L,
28L, 17L, 281L, 375L, 150L, 337L, 1L, 349L, 24L, 229L, 262L,
378L, 277L, 358L, 170L, 254L, 261L, 285L, 205L, 48L, 10L, 333L,
198L, 2L, 324L, 309L, 355L, 359L, 4L, 1L, 55L, 4L, 91L, 386L,
289L, 45L, 13L, 347L, 263L, 370L, 303L, 384L, 127L, 2L, 131L,
6L, 353L, 165L, 333L, 271L, 295L, 105L, 18L, 109L, 20L, 14L,
1L, 305L, 30L, 380L, 397L, 12L, 293L, 385L, 213L, 357L, 201L,
312L, 282L, 23L, 318L, 72L, 301L, 4L, 146L, 96L, 302L, 379L,
2L, 2L, 379L, 2L, 188L, 174L, 223L, 304L, 388L, 392L, 312L, 278L,
182L, 144L, 334L, 5L, 283L, 195L, 59L, 310L, 179L, 192L, 30L,
316L, 335L, 68L, 387L, 332L, 3L, 374L, 402L, 143L, 305L, 20L,
358L, 21L, 208L, 239L, 214L, 407L, 133L, 97L, 326L, 42L, 256L,
123L, 63L, 45L, 395L, 276L, 124L, 1L, 282L, 204L, 21L, 248L,
311L, 74L, 62L, 416L, 347L, 278L, 276L, 69L, 385L, 20L, 297L,
6L, 324L, 176L, 188L, 127L, 108L, 331L, 307L, 214L, 93L, 390L,
2L, 300L, 80L, 349L, 344L, 109L, 398L, 339L, 173L, 244L, 323L,
272L, 259L, 185L, 172L, 366L, 226L, 129L, 35L, 303L, 404L, 391L,
206L, 2L, 346L, 4L, 109L, 30L, 218L, 171L, 17L, 332L, 240L, 239L,
384L, 102L, 73L, 2L, 290L, 245L, 350L, 221L, 39L, 214L, 233L,
74L, 378L, 329L, 286L, 359L, 4L, 315L, 115L, 353L, 306L, 328L,
226L, 305L, 255L, 297L, 167L, 356L, 228L, 392L, 244L, 398L, 210L,
1L, 170L, 92L, 264L, 300L, 8L, 4L, 197L, 2L, 7L, 231L, 352L,
118L, 320L, 24L, 176L, 252L, 392L, 13L, 133L, 3L, 209L, 258L,
121L, 186L, 204L, 80L, 168L, 379L, 374L, 335L, 271L, 39L, 279L,
44L, 148L, 262L, 95L, 99L, 388L, 37L, 309L, 365L, 136L, 333L,
291L, 164L, 215L, 27L, 343L, 3L, 115L, 233L, 368L, 342L, 51L,
4L, 329L, 2L, 14L, 37L, 301L, 125L, 31L, 315L, 389L, 34L, 218L,
38L, 312L, 11L, 4L, 227L, 271L, 228L, 102L, 357L, 208L, 316L,
47L, 20L, 369L, 45L, 4L, 390L, 302L, 94L, 19L, 362L, 251L, 394L,
335L, 32L, 258L, 325L, 256L, 73L, 52L, 110L, 288L, 8L, 58L, 113L,
353L, 320L, 136L, 2L, 230L, 2L, 42L, 123L, 327L, 222L, 354L,
338L, 345L, 236L, 128L, 102L, 41L, 135L, 7L, 3L, 31L, 293L, 347L,
328L, 296L, 16L, 47L, 385L, 86L, 294L, 2L, 19L, 246L, 164L, 371L,
317L, 297L, 100L, 346L, 352L, 206L, 379L, 252L, 40L, 363L, 54L,
186L, 1L, 339L, 139L, 274L, 391L, 194L, 1L, 287L, 1L, 128L, 53L,
268L, 180L, 343L, 13L, 213L, 377L, 270L, 80L, 204L, 119L, 118L,
118L, 10L, 103L, 375L, 202L, 21L, 63L, 316L, 393L, 342L, 344L,
1L, 353L, 93L, 86L, 324L, 327L, 336L, 319L, 230L, 308L, 167L,
355L, 219L, 43L, 32L, 389L, 199L, 3L, 96L, 386L, 290L, 388L,
6L), dim = c(50L, 50L), dimnames = list(c("A2ML1", "ABCA4", "ABCB5",
"ABHD1", "ACRBP", "ACSL5", "ACSM5", "ACSS3", "ACVRL1", "ADH1C",
"ADRB2", "AEBP1", "AFMID", "AIF1", "AIM2", "AKR1B10", "AKR1C4",
"AKR7L", "ALDH3B2", "ALDH8A1", "ALDOC", "ALOX5AP", "ALPK3", "AMFR",
"ANKRD22", "ANKRD2", "ANKRD45", "ANXA8L2", "ANXA9", "AOC3", "APBB1IP",
"APH1B", "APOBEC3C", "APOL3", "APOL4", "APOM", "APP", "AQP1",
"ARFRP1", "ARHGAP29", "ARHGDIB", "ARL11", "ARL4D", "ARRDC3",
"ASCL3", "B3GNT3", "B3GNT8", "BAMBI", "BAZ2B", "BCL2L14"), c("TCGA.BQ.7051.11A",
"TCGA.DZ.6132.11A", "TCGA.CZ.4864.11A", "TCGA.KN.8426.11A", "TCGA.CZ.5982.11A",
"TCGA.A4.A4ZT.11A", "TCGA.CZ.5468.11A", "TCGA.BQ.5894.11A", "TCGA.B0.5699.11A",
"TCGA.KL.8339.11A", "TCGA.CZ.5988.11A", "TCGA.CZ.5461.11A", "TCGA.CJ.6030.11A",
"TCGA.B8.5549.11A", "TCGA.CW.5587.11A", "TCGA.CZ.5987.11A", "TCGA.CJ.5677.11A",
"TCGA.CZ.5470.11A", "TCGA.B2.5636.11A", "TCGA.CJ.5676.11A", "TCGA.KN.8435.11A",
"TCGA.BQ.5877.11A", "TCGA.CZ.5984.11A", "TCGA.CZ.5457.11A", "TCGA.CZ.4863.11A",
"TCGA.CZ.5467.11A", "TCGA.A3.3387.11A", "TCGA.CZ.5456.11A", "TCGA.B9.4115.11A",
"TCGA.GL.6846.11A", "TCGA.B0.5402.11A", "TCGA.DZ.6133.11A", "TCGA.B0.5691.11A",
"TCGA.B0.4700.11A", "TCGA.B0.5696.11A", "TCGA.CW.5581.11A", "TCGA.BQ.7045.11A",
"TCGA.KN.8427.11A", "TCGA.GL.A59R.11A", "TCGA.CW.5584.11A", "TCGA.BQ.5878.11A",
"TCGA.CW.5589.11A", "TCGA.CJ.5672.11A", "TCGA.BQ.7044.11A", "TCGA.CZ.5466.11A",
"TCGA.BQ.5887.11A", "TCGA.CZ.4865.11A", "TCGA.CZ.5458.11A", "TCGA.Y8.A8RY.11A",
"TCGA.KN.8422.11A"))), structure(list(group = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L), levels = "normal", class = "factor"), lib.size = c(94225,
93733, 87671, 94478, 81956, 81966, 91604, 87469, 81048, 91004,
81264, 92424, 91496, 85877, 87734, 83846, 88254, 92553, 89254,
91736, 96220, 84907, 90231, 87189, 90384, 87166, 81495, 81436,
90285, 83664, 95495, 84763, 91291, 85265, 87117, 81741, 88278,
92099, 81840, 90942, 88312, 89034, 89739, 90942, 95178, 88887,
91263, 85695, 87717, 90705), norm.factors = c(1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1)), row.names = c("TCGA.BQ.7051.11A", "TCGA.DZ.6132.11A",
"TCGA.CZ.4864.11A", "TCGA.KN.8426.11A", "TCGA.CZ.5982.11A", "TCGA.A4.A4ZT.11A",
"TCGA.CZ.5468.11A", "TCGA.BQ.5894.11A", "TCGA.B0.5699.11A", "TCGA.KL.8339.11A",
"TCGA.CZ.5988.11A", "TCGA.CZ.5461.11A", "TCGA.CJ.6030.11A", "TCGA.B8.5549.11A",
"TCGA.CW.5587.11A", "TCGA.CZ.5987.11A", "TCGA.CJ.5677.11A", "TCGA.CZ.5470.11A",
"TCGA.B2.5636.11A", "TCGA.CJ.5676.11A", "TCGA.KN.8435.11A", "TCGA.BQ.5877.11A",
"TCGA.CZ.5984.11A", "TCGA.CZ.5457.11A", "TCGA.CZ.4863.11A", "TCGA.CZ.5467.11A",
"TCGA.A3.3387.11A", "TCGA.CZ.5456.11A", "TCGA.B9.4115.11A", "TCGA.GL.6846.11A",
"TCGA.B0.5402.11A", "TCGA.DZ.6133.11A", "TCGA.B0.5691.11A", "TCGA.B0.4700.11A",
"TCGA.B0.5696.11A", "TCGA.CW.5581.11A", "TCGA.BQ.7045.11A", "TCGA.KN.8427.11A",
"TCGA.GL.A59R.11A", "TCGA.CW.5584.11A", "TCGA.BQ.5878.11A", "TCGA.CW.5589.11A",
"TCGA.CJ.5672.11A", "TCGA.BQ.7044.11A", "TCGA.CZ.5466.11A", "TCGA.BQ.5887.11A",
"TCGA.CZ.4865.11A", "TCGA.CZ.5458.11A", "TCGA.Y8.A8RY.11A", "TCGA.KN.8422.11A"
), class = "data.frame")))
I used some simulated data to try this, since it seems that the question can be generalized to other datasets. I also ran into errors with your subset of data.
Here we see that
b1
would look nicer next tob3
andb2
.Looking at the structure of the heatmap output, the dendrogram is stored as a "dendrogram" class object, which can be manipulated with with the
reorder()
generic.The documentation doesn't reveal too much, but the second argument
wts
describes arbitrary weights to determine a reordered dendrogram. From what I can tell, large values generally get placed to the right. From trial-and-error, it appears that supplying weights in the original order of the columns worked out. This essentially flips branches without affecting the distance metrics.When can then plot the heatmap with the new dendrogram using the
Colv
option.The
dendsort
package may be a better go-to tool for sorting dendrograms. In short, thedendsort()
moves clusters with smaller average distances to the left. Using this alone seems to solve the issue. With larger heatmaps, the benefit may be apparent when looking for patterns in the data. Seems preferable to manual reordering, when possible. Below I've modified the optionColv
to use this function.For more options for heatmaps concerning clustering and groups, I use the
ComplexHeatmap
package, which has wonderful documentation. They have many options for splitting columns; for instance, slicing up the columns into groups first, and then clustering within those slices. See this section 2.7: Chapter 2 A Single Heatmap | ComplexHeatmap Complete Reference.