组合热图

作者: 余绕 | 来源:发表于2023-01-05 17:07 被阅读0次
    1. 导入数据
    rm(list = ls())
    mat_expr <- read.csv(file = 'data/ComplexHeatmap/example3/mat_expr.csv', 
                         row.names = 1)
    mat_meth <- read.csv(file = 'data/ComplexHeatmap/example3/mat_meth.csv', 
                         row.names = 1)
    sample_info <- read.csv(file = 'data/ComplexHeatmap/example3/sample_info.csv', 
                            row.names = 1)
    gene_info <- read.csv(file = 'data/ComplexHeatmap/example3/gene_info.csv', 
                          row.names = 1)
    
    
    image.png

    2. 加载R包

    library(circlize)
    library(ComplexHeatmap)
    
    3.1 绘图
    #注释热图数据
    col_ha<-HeatmapAnnotation(
      type=sample_info$type,
      annotation_name_side = "left",
      col=list(type=c("Tumor"="pink",
                      "Control"="royalblue"))
    )
    
    
    
    Heatmap(mat_meth,
            show_row_names = F,
            cluster_columns = F,
            row_km = 2, #聚类kmeans分类
            row_split = gene_info$meth_direction, #在kmeans基础上,根据meth_direction继续分类
            col=colorRamp2(c(0,0.5,1),c("blue","white","red")), #自定义颜色
            top_annotation = col_ha, #添加注释热图
            name="Methylation",
            column_title = "Methylation"
            )+
    
    image.png

    3.2 添加甲基化数据的 heatmap

    Heatmap(mat_meth,
            show_row_names = F,
            cluster_columns = F,
            row_km = 2, #聚类kmeans分类
            row_split = gene_info$meth_direction, #在kmeans基础上,根据meth_direction继续分类
            col=colorRamp2(c(0,0.5,1),c("blue","white","red")),
            top_annotation = col_ha,
            name="Methylation",
            column_title = "Methylation"
            )+
      Heatmap(gene_info$meth_direction,
              name = "methy direction",
              column_title = "meth direction",
              col=c('hypo'='blue','hyper'='red'))
    
    image.png

    3.3 添加甲基化数据的 heatmap

    
    col_ha2<-HeatmapAnnotation(
      type=sample_info$type,
      annotation_name_side = "left",
      show_annotation_name = F,
      col=list(type=c("Tumor"="pink",
                      "Control"="royalblue"))
    )
    Heatmap(mat_meth,
            show_row_names = F,
            cluster_columns = F,
            row_km = 2, #聚类kmeans分类
            row_split = gene_info$meth_direction, #在kmeans基础上,根据meth_direction继续分类
            col=colorRamp2(c(0,0.5,1),c("blue","white","red")),
            top_annotation = col_ha,
            name="Methylation",
            column_title = "Methylation"
            )+
      Heatmap(gene_info$meth_direction,
              name = "methy direction",
              column_title = "meth direction",
              col=c('hypo'='blue','hyper'='red'))+
      Heatmap(mat_expr,
              show_row_names = F,
              cluster_columns =  F,
              top_annotation = col_ha2,
              name = "Expression",
              column_title = "Expression")
    
    
    image.png

    3.4 添加p_value Gene_type以及distance数据

    Heatmap(mat_meth,
            show_row_names = F,
            cluster_columns = F,
            row_km = 2, #聚类kmeans分类
            row_split = gene_info$meth_direction, #在kmeans基础上,根据meth_direction继续分类
            col=colorRamp2(c(0,0.5,1),c("blue","white","red")),
            top_annotation = col_ha,
            name="Methylation",
            column_title = "Methylation"
            )+
      Heatmap(gene_info$meth_direction,
              name = "methy direction",
              column_title = "meth direction",
              col=c('hypo'='blue','hyper'='red'))+
      Heatmap(mat_expr,
              show_row_names = F,
              cluster_columns =  F,
              top_annotation = col_ha2,
              name = "Expression",
              column_title = "Expression")+
      Heatmap(gene_info$cor_pvalue,
              name = 'cor_p_value',
              col=colorRamp2(c(0,2,4),c("green","white","red")))+
      Heatmap(gene_info$gene_type,
              name = "gene_type")+
      Heatmap(log2(gene_info$dist),
              name = 'Log2(distance)')
    
    image.png

    相关文章

      网友评论

        本文标题:组合热图

        本文链接:https://www.haomeiwen.com/subject/qoulcdtx.html