heatmap
位於 stats
包(package)。 說明
熱圖是一個假彩色圖像(本質上是 image(t(x))
),在左側和頂部添加了樹狀圖。通常,根據樹狀圖施加的限製內的某些值集(行或列平均值)對行和列進行重新排序。
用法
heatmap(x, Rowv = NULL, Colv = if(symm)"Rowv" else NULL,
distfun = dist, hclustfun = hclust,
reorderfun = function(d, w) reorder(d, w),
add.expr, symm = FALSE, revC = identical(Colv, "Rowv"),
scale = c("row", "column", "none"), na.rm = TRUE,
margins = c(5, 5), ColSideColors, RowSideColors,
cexRow = 0.2 + 1/log10(nr), cexCol = 0.2 + 1/log10(nc),
labRow = NULL, labCol = NULL, main = NULL,
xlab = NULL, ylab = NULL,
keep.dendro = FALSE, verbose = getOption("verbose"), ...)
參數
x |
要繪製的值的數字矩陣。 |
Rowv |
確定是否以及如何計算和重新排序行樹狀圖。 |
Colv |
確定是否以及如何對列樹狀圖重新排序。與上麵的 |
distfun |
用於計算行和列之間的距離(相異度)的函數。默認為 |
hclustfun |
當 |
reorderfun |
|
add.expr |
調用 |
symm |
邏輯指示 |
revC |
邏輯指示列順序是否應為 |
scale |
指示值是否應在行方向或列方向上居中和縮放的字符,或者不居中。如果 |
na.rm |
邏輯指示是否應刪除 |
margins |
長度為 2 的數值向量,分別包含列名和行名的邊距(請參閱 |
ColSideColors |
(可選)長度為 |
RowSideColors |
(可選)長度為 |
cexRow, cexCol |
正數,用作行或列軸標簽中的 |
labRow, labCol |
帶有要使用的行和列標簽的字符向量;這些默認分別為 |
main, xlab, ylab |
主、x 軸和 y 軸標題;默認為無。 |
keep.dendro |
邏輯指示是否應將樹狀圖保留為結果的一部分(當 |
verbose |
邏輯指示是否應打印信息。 |
... |
傳遞給 |
細節
如果 Rowv
或 Colv
是樹狀圖,則它們將被尊重(並且不會重新排序)。否則,樹狀圖計算為 dd <- as.dendrogram(hclustfun(distfun(X)))
,其中 X
是 x
或 t(x)
。
如果其中之一是向量(‘weights’),則在行情況下,根據提供的值對適當的樹狀圖進行重新排序,該值受到樹狀圖施加的約束,由 reorder(dd,
Rowv)
施加。如果默認情況下缺少其中一個,則相應樹狀圖的排序將按行/列的平均值進行,即,在行的情況下為 Rowv <- rowMeans(x, na.rm = na.rm)
。如果其中之一是 NA
,則不會對相應的一側進行重新排序。
默認情況下 ( scale = "row"
),行被縮放為均值為零和標準差為一。基因組繪圖的一些經驗證據表明這是有用的。
值
隱形的組件列表
rowInd |
|
colInd |
列索引排列向量。 |
Rowv |
行樹狀圖;僅當輸入 |
Colv |
柱樹圖;僅當輸入 |
注意
除非 Rowv = NA
(或 Colw = NA
),否則原始行和列在任何情況下都會重新排序以匹配樹狀圖,例如, order.dendrogram(Rowv)
的行,其中 Rowv
是(可能是 reorder()
ed)行樹狀圖。
heatmap()
使用 layout
並在 2x2 布局的右下角繪製 image
。因此,它不能用於多列/行布局,即當調用par(mfrow = *)
或(mfcol = *)
時。
例子
require(graphics); require(grDevices)
x <- as.matrix(mtcars)
rc <- rainbow(nrow(x), start = 0, end = .3)
cc <- rainbow(ncol(x), start = 0, end = .3)
hv <- heatmap(x, col = cm.colors(256), scale = "column",
RowSideColors = rc, ColSideColors = cc, margins = c(5,10),
xlab = "specification variables", ylab = "Car Models",
main = "heatmap(<Mtcars data>, ..., scale = \"column\")")
utils::str(hv) # the two re-ordering index vectors
## no column dendrogram (nor reordering) at all:
heatmap(x, Colv = NA, col = cm.colors(256), scale = "column",
RowSideColors = rc, margins = c(5,10),
xlab = "specification variables", ylab = "Car Models",
main = "heatmap(<Mtcars data>, ..., scale = \"column\")")
## "no nothing"
heatmap(x, Rowv = NA, Colv = NA, scale = "column",
main = "heatmap(*, NA, NA) ~= image(t(x))")
round(Ca <- cor(attitude), 2)
symnum(Ca) # simple graphic
heatmap(Ca, symm = TRUE, margins = c(6,6)) # with reorder()
heatmap(Ca, Rowv = FALSE, symm = TRUE, margins = c(6,6)) # _NO_ reorder()
## slightly artificial with color bar, without and with ordering:
cc <- rainbow(nrow(Ca))
heatmap(Ca, Rowv = FALSE, symm = TRUE, RowSideColors = cc, ColSideColors = cc,
margins = c(6,6))
heatmap(Ca, symm = TRUE, RowSideColors = cc, ColSideColors = cc,
margins = c(6,6))
## For variable clustering, rather use distance based on cor():
symnum( cU <- cor(USJudgeRatings) )
hU <- heatmap(cU, Rowv = FALSE, symm = TRUE, col = topo.colors(16),
distfun = function(c) as.dist(1 - c), keep.dendro = TRUE)
## The Correlation matrix with same reordering:
round(100 * cU[hU[[1]], hU[[2]]])
## The column dendrogram:
utils::str(hU$Colv)
作者
Andy Liaw, original; R. Gentleman, M. Maechler, W. Huber, revisions.
也可以看看
相關用法
- R hclust 層次聚類
- R stlmethods STL 對象的方法
- R medpolish 矩陣的中值波蘭(穩健雙向分解)
- R naprint 調整缺失值
- R summary.nls 總結非線性最小二乘模型擬合
- R summary.manova 多元方差分析的匯總方法
- R formula 模型公式
- R nls.control 控製 nls 中的迭代
- R aggregate 計算數據子集的匯總統計
- R deriv 簡單表達式的符號和算法導數
- R kruskal.test Kruskal-Wallis 秩和檢驗
- R quade.test 四方測試
- R decompose 移動平均線的經典季節性分解
- R plot.stepfun 繪製階躍函數
- R alias 查找模型中的別名(依賴項)
- R qqnorm 分位數-分位數圖
- R eff.aovlist 多層方差分析的計算效率
- R pairwise.t.test 成對 t 檢驗
- R loglin 擬合對數線性模型
- R predict.smooth.spline 通過平滑樣條擬合進行預測
- R bartlett.test 方差齊性的 Bartlett 檢驗
- R influence.measures 回歸刪除診斷
- R loess.control 設置黃土參數
- R Normal 正態分布
- R summary.lm 總結線性模型擬合
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Draw a Heat Map。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。