[英]R: Centering heatmap.2 key (gplots package)
我想通過 heatmap.2() 命令創建一個熱圖,其顏色鍵以 0 為中心(即白色 -> 0,紅色 -> 大於 0,藍色 -> 小於 0),同時保持 scale= “無”,因為我有興趣繪制實際值的熱圖。 但是,在使用以下行時,我所有的熱圖都不以零為中心:
library(gplots)
outputHeatmap <- heatmap.2(heatmapInputActual, dendrogram="none", Rowv=FALSE,
Colv=FALSE, col= bluered(256), scale="none", key=TRUE, density.info="none",
trace="none", cexRow=0.125, cexCol=0.125, symm=FALSE, symkey=TRUE)
我認為使用命令 symkey=TRUE 會起作用,但它不起作用。 我正在嘗試制作熱圖的變量是一個 (nx 3) 數值矩陣。 上述 heatmap.2() 命令的一個有問題的輸入如下:
8.408458 5.661144 0.00000000
4.620846 4.932283 -0.46570468
-4.638912 -3.471838 -0.12146109
-4.822829 -3.946024 0.06403327
3.948832 4.520447 -0.31945941
感謝您的時間。 我期待着您的回復。
解決方案似乎只是將symbreaks
添加到您的heatmap.2
。 這是一個完全可重現的數據示例:
library(gplots)
#read your example data
heatmapInputActual <- read.table(textConnection(
"8.408458 5.661144 0.00000000
4.620846 4.932283 -0.46570468
-4.638912 -3.471838 -0.12146109
-4.822829 -3.946024 0.06403327
3.948832 4.520447 -0.31945941
"),as.is=TRUE)
#convert sample data to matrix
heatmapInputActual <- as.matrix(heatmapInputActual)
#just add symbreaks to the end of your code
heatmap.2(heatmapInputActual, dendrogram="none", Rowv=FALSE, Colv=FALSE,
col = bluered(256), scale="none", key=TRUE, density.info="none",
trace="none", cexRow=0.125, cexCol=0.125, symm=F,symkey=T,symbreaks=T)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.