gpt4 book ai didi

r - heatmap.2 (gplots) 如何更改颜色键的水平大小并添加图例

转载 作者:行者123 更新时间:2023-12-02 23:01:34 68 4
gpt4 key购买 nike

我正在使用 heatmap.2 生成热图。我知道如何控制许多参数,但我仍然没有找到一种方法来使颜色键变得更宽或将其作为 strip 放在绘图的侧面或底部。

使用 keysize,它会按比例修改高度和宽度。

此外,当使用 ColSideColors 时,我使用 legend() 来放置颜色标签,但“topright”不在右上角。我知道这是关于绘图区域、边距等的问题,但我还没有找到一个很好的解释文本来说明 heatmap.2 绘图的结构以及如何通过坐标定位事物以及如何处理 oma、mar 等。在边距、样本、树深度等上,图例可以放置在开放区域或与热图重叠一些。任何关于理解 R 图形问题的好文章都将受到真正的赞赏。

使用的编码是:

df<- data.frame(  x1=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,x2=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,x3=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,x4=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,x5=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,x6=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,x7=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,x8=rnorm(120,mean=rep(1:3,each=4),sd=0.2)
,y1=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
,y2=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
,y3=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
,y4=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
,y5=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
,y6=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
,y7=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
,y8=rnorm(120,mean=rep(c(1,2,1),each=4),sd=0.2)
)
dataMatrix <- as.matrix(df)[sample(1:120),]
heatmap.2(dataMatrix
, col=rev(brewer.pal(11,"RdBu"))
, density.info="none"
, key=TRUE
, symkey=FALSE
, trace="none"
, cexRow=1
, scale='row'
, margins =c(10,9)
, ColSideColors=c(rep("red", ncol(df)/2), rep("green", ncol(df)/2))
, main="Log2_intensities median centered"
, keysize=0.9)

legend('topright', c("x", "y"),lty=1, col=c("red", "green"), cex=0.8)

最佳答案

这里描述了组织情节的方法:Moving color key in R heatmap.2 (function of gplots package)当有 ColSideColors 时,heatmap.2 会将绘图绘制为

1 ColSideColors

2 热图

3 ...如上面的链接所示

从未使用RowSideColors进行过测试。换句话说,您可以使用 heatmap.2lmatlwidlhei 参数来组织绘图。这可以为您的传奇提供一些空间。

关于r - heatmap.2 (gplots) 如何更改颜色键的水平大小并添加图例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24004657/

68 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com