美文网首页基因组数据绘图ggplot2绘图
R绘图—Ternary的绘制(三元图)

R绘图—Ternary的绘制(三元图)

作者: Clariom | 来源:发表于2020-11-01 18:49 被阅读0次

    三元图的应用场景:三分组以上, 直观展示某个因素(可数值量化的)在三个条件下的倾向性!

    1. 直观展示基因表达在三组的表达偏向性

    首先清除环境,安装并加载所需要的R包

    rm(list = ls()) #清除环境内存
    install.packages("ggplot2")
    install.packages("ggtern") 
    library("ggtern")
    library("ggplot2")
    

    载入数据(主体数据为三分组数据)

    data<-read.table("Ternary1.txt",header = T,sep ="\t")
    head(data)#查看数据
    ##   gene_name  Negative     Neutral   Positive   average enrichment
    ## 1      NRGN 2.3699806 0.073607064 0.82261289 1.0887335   Negative
    ## 2      NONO 0.3744240 0.003200307 0.02625360 0.1346260   Negative
    ## 3     ZBED3 2.8678412 0.019201843 0.57757927 1.1548741   Negative
    ## 4    B4GAT1 6.9865054 0.092808907 1.26892414 2.7827462   Negative
    ## 5     PGAP2 0.3949968 0.006400614 0.19252642 0.1979746   Negative
    ## 6       HYI 0.1152074 0.003200307 0.06125841 0.0598887   Negative
    

    绘图,建立数据的映射关系
    具体的取值映射可自行定义,本次用平均表达值以及富集对象为映射

    p<-ggtern(data=data,aes(x=Negative,y=Neutral,z=Positive))+     #X,Y,Z轴分别映射三分组表达值
       geom_point(aes(size=average,color=enrichment),alpha=0.8)+     #以点图形式呈现,大小映射的是平均值,颜色映射的是最大值对应组即enrichment)
       scale_colour_manual(values = c("grey","#f68b23","#00a070"))+   #自定义设置颜色
       theme_rgbw(base_size = 12 )+   #设置背景样式和字体大小,背景样式可通过theme_bw查询
       labs(title = "Ternary plot")+   #设置标题
       theme(plot.title = element_text(size=15,hjust = 0.5)) ##标题大小和位置
       # + theme_legend_position(x="topright")   #更改图注位置,topleft, middleleft, bottomleft, topright, middleright and bottomright
    print(p)
    
    image.png

    添加基因信息

    p1=p+geom_text(data=subset(data,average>5), 
                   aes(label=data[data$average>5,][,1],
                   size=3),col="black",check_overlap = F,
                   hjust = 1.5,vjust = 0.5,angle = 45)
    #?geom_text() #查看函数用法
    print(p1)
    
    image

    输出PDF结果

    ggsave("Ternary1.pdf", width = 18, height = 12, units = "cm") # ggsave可将图保存为多种格式
    

    2. 直观展示不同功能在三组中的偏向性

    首先清除环境,安装并加载所需要的R包

    rm(list = ls()) #清除环境内存
    #install.packages("ggplot2")
    #install.packages("ggtern") 
    library("ggtern")
    library("ggplot2")
    

    载入数据(主体数据为三分组数据)

    data<-read.table("Ternary2.txt",header = T,sep ="\t")
    head(data) #查看数据
    ##   gene_name   Negative     Neutral   Positive    average            Pathway
    ## 1     PSMB6 0.61718246 0.022402150 0.19252642 0.27737034 adherens junction 
    ## 2     CHMP5 0.32093488 0.003200307 0.05250721 0.12554746 adherens junction 
    ## 3      EVPL 0.67478616 0.006400614 0.41130645 0.36416441 adherens junction 
    ## 4  ARHGEF16 0.16869654 0.009600921 0.05250721 0.07693489 adherens junction 
    ## 5      USO1 0.34562218 0.048004607 0.34129684 0.24497454 adherens junction 
    ## 6     CADM2 0.09874919 0.003200307 0.01750240 0.03981730 adherens junction
    

    绘图,建立数据的映射关系
    具体的取值映射可自行定义,本次用功能分类为映射

    p<-ggtern(data=data,aes(x=Negative,y=Neutral,z=Positive))+     #X,Y,Z轴分别映射三分组表达值
       geom_point(aes(size=average,color=Pathway),alpha=0.8)+     #以点图形式呈现,大小映射的是平均值,颜色映射的是最大值对应组即enrichment)
       scale_colour_manual(values = c("#00a070","#7e532f"))+   #自定义设置颜色
       theme_rgbw(base_size = 12 )+   #设置背景样式和字体大小,背景样式可通过theme_bw查询
       labs(title = "Ternary plot")+   #设置标题
       theme(plot.title = element_text(size=15,hjust = 0.5)) #标题大小和位置
    print(p)
    
    image

    输出PDF结果

    ggsave("Ternary2.pdf", width = 15, height = 12, units = "cm") # ggsave可将图保存为多种格式
    

    往期回顾
    R绘图 | 两组genes的累积曲线分布比较!
    R绘图 | 基于文献结果图的重现思考!
    R绘图 | Cell-Type Enrichment分析探索
    R绘图|韦恩图的常见绘制方法
    R绘图|ggplot2火山图的绘制
    R绘图|ggplot2散点图的绘制
    R绘图|pheatmap热图绘制——基础篇
    R绘图|pheatmap热图绘制——中阶篇
    R绘图|pheatmap热图绘制——高阶篇

    相关文章

      网友评论

        本文标题:R绘图—Ternary的绘制(三元图)

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