我几次,现在读heatmap.2帮助手册,并在各种在线教程我没有看过有关的方式来移动色键到不同的位置。 现在,我想知道是否有可能?
颜色关键是默认情况下在左上角如果您正在使用从gplots包heatmap.2功能。
我几次,现在读heatmap.2帮助手册,并在各种在线教程我没有看过有关的方式来移动色键到不同的位置。 现在,我想知道是否有可能?
颜色关键是默认情况下在左上角如果您正在使用从gplots包heatmap.2功能。
在每个元素的位置heatmap.2
情节可以使用被控制lmat
, lhei
和lwid
参数。 这些都过去了heatmap.2
的layout
命令:
layout(mat = lmat, widths = lwid, heights = lhei)
lmat
是说明屏幕如何被分解的矩阵。 默认情况下,heatmap.2将屏幕划分为四个元件网格,所以lmat
是一个2×2矩阵。 在矩阵的每个元素的数字说明什么顺序绘制接下来的四个地块在Heatmap.2绘制了以下顺序的元素:
所以默认lmat
是:
> rbind(4:3,2:1)
[,1] [,2]
[1,] 4 3
[2,] 2 1
例如,如果你想要把热图下方的关键应指定:
> lmat = rbind(c(0,3),c(2,1),c(0,4))
> lmat
[,1] [,2]
[1,] 0 3
[2,] 2 1
[3,] 0 4
lwid
和lhei
是指定每行和列的高度和宽度的载体。 默认为c(1.5,4)
两种。 如果你改变lmat
你要么有或很可能要改变这些孩子的。 对于上面的例子,如果我们想保持所有其他元素的大小相同,但希望在底部薄色键,我们可以设置
>lwid = c(1.5,4)
>lhei = c(1.5,4,1)
我们就准备好绘制热图:
>heatmap.2(x,...,lmat = lmat, lwid = lwid, lhei = lhei)
这将绘制与列树形图的热图上方的行树形图的左边,而下方关键热图。 不幸的是,在关键的标题和标签硬编码。
看?layout
有关如何更多的细节layout
工作。
有通过参数调用了相当长的代码中定义的特定地区heatmap.2
,我还没有看到它的原作者或任何“revisors”围绕这些部分,虽然他们对R-帮助的时候参观。 主要情节尺寸由2元素向量设定margins
。 这里有一些地方,你可能需要做出改变:
#1)
if (!missing(RowSideColors)) {
par(mar = c(margins[1], 0, 0, 0.5))
image(rbind(1:nr), col = RowSideColors[rowInd], axes = FALSE)
#2)
if (!missing(ColSideColors)) {
par(mar = c(0.5, 0, 0, margins[2]))
image(cbind(1:nc), col = ColSideColors[colInd], axes = FALSE)
#3)
par(mar = c(margins[1], 0, 0, margins[2]))
#4)
par(mar = c(margins[1], 0, 0, 0))
#5)
par(mar = c(0, 0, if (!is.null(main)) 5 else 0, margins[2]))
#6
if (key) {
par(mar = c(5, 4, 2, 1), cex = 0.75)