如何去除d3heatmap颜色透明度并解决行标签重叠问题
解决d3heatmap热力图的两个问题
一、去除热力图颜色的透明度
d3heatmap默认会给颜色添加透明度,直接在函数里加alpha = 1参数就能完全关闭透明度,修改后的代码如下:
library("d3heatmap") # alpha=1强制取消透明度 d3heatmap(b, col = coul, k_row =4, k_col = 4,show_grid = TRUE, key=TRUE, alpha = 1)
二、解决行标签重叠问题
有三种实用方案,按需选择:
- 缩小标签字体:用
fontsize_row参数调小行标签字号,比如设为8(默认通常为10),代码示例:d3heatmap(b, col = coul, k_row =4, k_col = 4,show_grid = TRUE, key=TRUE, alpha = 1, fontsize_row = 8) - 旋转行标签:通过
row_text_angle参数把标签旋转一定角度(比如45度),避免横向重叠:d3heatmap(b, col = coul, k_row =4, k_col = 4,show_grid = TRUE, key=TRUE, alpha = 1, row_text_angle = 45) - 仅显示部分行标签:手动指定要显示的标签,比如每隔5行显示一个,假设行名为
rownames(b),可以这样处理:# 生成自定义标签向量,每5行保留一个标签,其余设为空 custom_row_labels <- ifelse(seq_along(rownames(b)) %% 5 == 0, rownames(b), "") d3heatmap(b, col = coul, k_row =4, k_col = 4,show_grid = TRUE, key=TRUE, alpha = 1, row_labels = custom_row_labels)
内容的提问来源于stack exchange,提问作者Tommaso
相关产品推荐
相关产品推荐

