如何在复杂热图中只标记每 10 列

问题描述

我使用以下代码制作了一个热图:

library(ComplexHeatmap)
library(RColorBrewer)
library(circlize)

df <- read.csv("/home/aahm/Documents/gene1_allpop_sitepi.csv")
df1<- t(df[,2:ncol(df)])
colnames(df1) <- df[,1]


mycols <- colorRamp2(breaks = c(0,0.2,0.4,0.6,0.8,1.0),col = brewer.pal(n = 6,name = "Blues"))

             
png("/home/aahm/Desktop/c.png",width=20,height=8,units="cm",res=100)
Heatmap(df1,width = unit(10,"cm"),height = unit(5,name = 'site pi',row_names_gp = gpar(fontsize = 5.5),column_title = "TLR2",column_title_gp = gpar(fontsize = 15,fontface = "bold"),row_title = NULL,column_title_side = "top",col = mycols,show_column_dend = TRUE,cluster_rows = TRUE,column_order = order(as.numeric(gsub("column","",colnames(df1)))),column_names_rot = 45,show_column_names = TRUE,column_names_gp = grid::gpar(fontsize = 5)
        
)

dev.off()

我的热图如下:

Heatmap image

由于列标签不可读,我想只标记每 10 列而不是标记每一列。这是否可以使用 Complex heatmap 包。我真的坚持这一点,非常感谢任何帮助。

我尝试删除标签添加自定义标签,但这些似乎不合适。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)