R繪圖—Ternary的繪制(三元圖)

三元圖的應(yīng)用場(chǎng)景:三分組以上, 直觀展示某個(gè)因素(可數(shù)值量化的)在三個(gè)條件下的傾向性!

1. 直觀展示基因表達(dá)在三組的表達(dá)偏向性

首先清除環(huán)境,安裝并加載所需要的R包

rm(list = ls()) #清除環(huán)境內(nèi)存
install.packages("ggplot2")
install.packages("ggtern") 
library("ggtern")
library("ggplot2")

載入數(shù)據(jù)(主體數(shù)據(jù)為三分組數(shù)據(jù))

data<-read.table("Ternary1.txt",header = T,sep ="\t")
head(data)#查看數(shù)據(jù)
##   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

繪圖,建立數(shù)據(jù)的映射關(guān)系
具體的取值映射可自行定義,本次用平均表達(dá)值以及富集對(duì)象為映射

p<-ggtern(data=data,aes(x=Negative,y=Neutral,z=Positive))+     #X,Y,Z軸分別映射三分組表達(dá)值
   geom_point(aes(size=average,color=enrichment),alpha=0.8)+     #以點(diǎn)圖形式呈現(xiàn),大小映射的是平均值,顏色映射的是最大值對(duì)應(yīng)組即enrichment)
   scale_colour_manual(values = c("grey","#f68b23","#00a070"))+   #自定義設(shè)置顏色
   theme_rgbw(base_size = 12 )+   #設(shè)置背景樣式和字體大小,背景樣式可通過theme_bw查詢
   labs(title = "Ternary plot")+   #設(shè)置標(biāo)題
   theme(plot.title = element_text(size=15,hjust = 0.5)) ##標(biāo)題大小和位置
   # + 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() #查看函數(shù)用法
print(p1)
image

輸出PDF結(jié)果

ggsave("Ternary1.pdf", width = 18, height = 12, units = "cm") # ggsave可將圖保存為多種格式

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

首先清除環(huán)境,安裝并加載所需要的R包

rm(list = ls()) #清除環(huán)境內(nèi)存
#install.packages("ggplot2")
#install.packages("ggtern") 
library("ggtern")
library("ggplot2")

載入數(shù)據(jù)(主體數(shù)據(jù)為三分組數(shù)據(jù))

data<-read.table("Ternary2.txt",header = T,sep ="\t")
head(data) #查看數(shù)據(jù)
##   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

繪圖,建立數(shù)據(jù)的映射關(guān)系
具體的取值映射可自行定義,本次用功能分類為映射

p<-ggtern(data=data,aes(x=Negative,y=Neutral,z=Positive))+     #X,Y,Z軸分別映射三分組表達(dá)值
   geom_point(aes(size=average,color=Pathway),alpha=0.8)+     #以點(diǎn)圖形式呈現(xiàn),大小映射的是平均值,顏色映射的是最大值對(duì)應(yīng)組即enrichment)
   scale_colour_manual(values = c("#00a070","#7e532f"))+   #自定義設(shè)置顏色
   theme_rgbw(base_size = 12 )+   #設(shè)置背景樣式和字體大小,背景樣式可通過theme_bw查詢
   labs(title = "Ternary plot")+   #設(shè)置標(biāo)題
   theme(plot.title = element_text(size=15,hjust = 0.5)) #標(biāo)題大小和位置
print(p)
image

輸出PDF結(jié)果

ggsave("Ternary2.pdf", width = 15, height = 12, units = "cm") # ggsave可將圖保存為多種格式

往期回顧
R繪圖 | 兩組genes的累積曲線分布比較!
R繪圖 | 基于文獻(xiàn)結(jié)果圖的重現(xiàn)思考!
R繪圖 | Cell-Type Enrichment分析探索
R繪圖|韋恩圖的常見繪制方法
R繪圖|ggplot2火山圖的繪制
R繪圖|ggplot2散點(diǎn)圖的繪制
R繪圖|pheatmap熱圖繪制——基礎(chǔ)篇
R繪圖|pheatmap熱圖繪制——中階篇
R繪圖|pheatmap熱圖繪制——高階篇

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容