【问题标题】:How to change cell dimensions with ComplexHeatmap?如何使用 ComplexHeatmap 更改单元格尺寸?
【发布时间】:2019-06-19 21:08:18
【问题描述】:

我正在尝试使用 ComplexHeatmap 在 R 中创建热图。我使用以下代码部分创建了热图:

Heatmap(gsea.heatmap.df,
         cluster_rows = FALSE,
         cluster_columns = FALSE,
         show_row_dend = FALSE,
         show_column_dend = FALSE,
         col = colorRamp2(c(-1, 0, 1), c("red", "white", "blue")),
         heatmap_legend_param = list(color_bar = "continuous",
                                     at = c(0, -0.1, -0.2, -0.3, -0.4, -0.5, -0.6, -0.7, -0.8, -0.9, -1),
                                     labels = c("1", "0.9", "0.8", "0.7", "0.6", "0.5", "0.4", "0.3", "0.2", "0.1", "0")))

生成的热图如下所示:

但是,热图的每个单元格的尺寸都被拉长了。我试图找到用于控制每个单元格尺寸的参数,但我找不到。理想情况下,我想让每个单元格成为一个完美的正方形。有没有办法让我轻松更改热图中的单元格尺寸?

【问题讨论】:

    标签: r heatmap


    【解决方案1】:

    它默认适合图像允许的宽度,可以随着您调整大小而改变。我不相信 ComplexHeatmap 的开发人员已经让用户控制每个单元格的宽度。您可以使用控制单个热图宽度的width 参数来查看是否有帮助。但我怀疑当你调整绘图大小时它会有所不同。

    【讨论】:

      【解决方案2】:

      只是为了完成 De Novo 的回答,

      它默认适合图像允许的宽度,可以随着您调整大小而改变。

      这是 ComplexHeatmap 的documentation 中给出的建议:

      ComplexHeatmap 生成的热图中,所有热图组件都有绝对大小,只有热图主体的大小(或单元格的大小)是可变的(或者换句话说,如果你改变了最终图形的大小设备,例如在绘图时通过拖动图形窗口,仅调整热图主体的大小),这意味着整个绘图的大小与热图中的行数或列数线性相关。这意味着我们实际上可以拟合线性模型y = a*x + b,例如y 是整个图的高度,x 是行数。

      【讨论】:

        猜你喜欢
        • 2016-10-07
        • 2015-11-08
        • 2017-03-15
        • 1970-01-01
        • 1970-01-01
        • 2021-11-06
        • 1970-01-01
        • 1970-01-01
        • 2021-05-23
        相关资源
        最近更新 更多