デンドログラムとそれに続く順序付けが必要ない場合はRowv
、 とColv
を設定する必要があります。NA
ところで、スケーリングも行う必要があります。Andrie の df を使用:
heatmap(as.matrix(df)[order(k$cluster),],Rowv=NA,Colv=NA,scale="none",labRow=NA)

実際、このヒートマップ全体はimage()
. を使用image
して、必要に応じて正確にプロットを作成することができます。Heatmap は内部で layout() を使用しているため、余白を設定するのは困難です。画像を使用すると、たとえば次のことができます。
myHeatmap <- function(x,ord,xlab="",ylab="",main="My Heatmap",
col=heat.colors(5), ...){
op <- par(mar=c(3,0,2,0)+0.1)
on.exit(par(op))
nc <- NCOL(x)
nr <- NROW(x)
labCol <- names(x)
x <- t(x[ord,])
image(1L:nc, 1L:nr, x, xlim = 0.5 + c(0, nc), ylim = 0.5 +
c(0, nr), axes = FALSE, xlab=xlab, ylab=ylab, main=main,
col=col,...)
axis(1, 1L:nc, labels = labCol, las = 2, line = -0.5, tick = 0)
axis(2, 1L:nr, labels = NA, las = 2, line = -0.5, tick = 0)
}
library(RColorBrewer)
myHeatmap(df,order(k$cluster),col=brewer.pal(5,"BuGn"))
余白の少ないプロットを作成する。軸、色などを操作することもできます...RColorBrewer
パッケージを確認する必要があります
(このカスタム関数は、ヒートマップで使用される内部プロットに基づいており、図のために単純化され、すべての樹形図を取り除くために簡略化されています)
