RStudio中使用heatmaply绘制热图如何去除行侧边颜色条
heatmaply 移除热图行侧默认颜色条方案
问题场景
在 RStudio 中使用 heatmaply 包绘制热图时,输出结果每行侧边默认附带颜色条,调整常规参数无法移除。
- 使用的示例数据结构:

- 原始绘图代码:
eg <- read.delim(file="example_heatmap.txt", header=T, sep="\t") heatmaply( file="heatmap_eg.png", height=2000, eg, colors=colorRampPalette(colors=c("lightblue", "darkblue")), column_text_angle = 45, plot_method = "plotly", key.title = "Ab", labRow = eg[,1] )
- 原始输出效果(带多余行侧色条):

- 期望效果(无行侧色条):

解决方法
heatmaply 默认会为聚类后的行/列自动生成分组侧边色条,只需在调用函数时显式设置 row_side_colors = NULL 即可移除行侧颜色条。
另外原始代码存在两个细节问题需要修正:
- 输入的
eg数据框第一列为行名字符列,直接传入会将整个数值矩阵转为字符型,导致绘图异常,需要取除第一列外的数值部分作为热图输入 file属于导出相关参数,放在数据参数前容易出现参数匹配错误,建议放在参数列表末尾
修正后的可运行代码:
eg <- read.delim(file="example_heatmap.txt", header=T, sep="\t") heatmaply( x = eg[, -1], # 提取数值矩阵部分作为绘图输入 colors = colorRampPalette(colors=c("lightblue", "darkblue")), column_text_angle = 45, plot_method = "plotly", key.title = "Ab", labRow = eg[, 1], row_side_colors = NULL, # 关闭行侧颜色条 height = 2000, file = "heatmap_eg.png" )
如果不需要列侧颜色条,额外添加参数 col_side_colors = NULL 即可同步移除。
内容的提问来源于stack exchange,提问作者Mir Alvee Ahmed
相关产品推荐
相关产品推荐

