以底面R翻转热图的颜色范围

以底面R翻转热图的颜色范围,r,colors,heatmap,R,Colors,Heatmap,我正在R基地建立一个简单的热图。 这是我的矩阵: stleft = matrix( c(0,5,5,2,6,8,4,6,9), nrow=3, ncol=3) colnames(stleft) <- c("Narrow","Wide", "Wider") rownames(stleft) <- c("Person", "Object","Bare") stleft 要构建热图,我只需运行: heatmap(stleft, Colv = NA,

我正在R基地建立一个简单的热图。 这是我的矩阵:

stleft = matrix( 
     c(0,5,5,2,6,8,4,6,9), 
     nrow=3, 
     ncol=3) 
colnames(stleft) <- c("Narrow","Wide", "Wider")
rownames(stleft) <- c("Person", "Object","Bare")
stleft
要构建热图,我只需运行:

heatmap(stleft, Colv = NA, Rowv = NA, scale = "none")

如您所见,“0”(对应于窄单元格/人单元格)显示为深红色,“9”(对应于宽单元格/裸单元格)显示为浅黄色

  • 如何“翻转”此范围,使“0”显示为浅颜色,“9”显示为深颜色

  • 为什么图像会被截断?它在RStudio绘图面板中显示为截断,并保存为截断。我曾试图在R工作室放大情节面板,但没有成功

heatmap()
(和
image()
)默认情况下使用
heat.colors()
生成颜色。如果你愿意,你可以提供你自己的颜色,f.ex。通过使用
heat.colors()
,刚好相反

par(oma=c(3, 0, 0, 3))
col <- rev(heat.colors(999))
heatmap(stleft, Colv = NA, Rowv = NA, scale = "none", col = col)
par(oma=c(3,0,0,3))
上校
par(oma=c(3, 0, 0, 3))
col <- rev(heat.colors(999))
heatmap(stleft, Colv = NA, Rowv = NA, scale = "none", col = col)