01 简单使用
library(GOplot)# Load the included datasetdata(EC)# Building the circ objectcirc <- circle_dat(EC$david, EC$genelist)
# Creating the circular plotGOCircle(circ,label.size = 4)# Creating the circular plot with a different colour scale for the logFCGOCircle(circ, lfc.col = c('purple', 'orange'),label.size = 4)# Creating the circular plot with a different colour scale for the z-scoreGOCircle(circ, zsc.col = c('yellow', 'black', 'cyan'),label.size = 4)# Creating the circular plot with different font styleGOCircle(circ, label.size = 4, label.fontface = 'italic')
示例图就画好啦,简单看下:
接下来还是用自己的数据试试怎么画···
02 使用富集分析结果表格绘图
0、 给大家看下示例数据
keggdata <- read.csv("gsea_sortKEGG2.csv")> head(keggdata) ID Description setSize enrichmentScore NEShsa00020 hsa00020 Citrate cycle (TCA cycle) 28 -0.6487016 -1.900240hsa00190 hsa00190 Oxidative phosphorylation 97 -0.6452653 -2.363157hsa04330 hsa04330 Notch signaling pathway 23 0.6344149 1.959194hsa00040 hsa00040 Pentose and glucuronate interconversions 17 -0.8401231 -2.215399hsa00071 hsa00071 Fatty acid degradation 33 -0.6451466 -1.961619hsa00830 hsa00830 Retinol metabolism 26 -0.7403528 -2.139525 pvalue p.adjust qvalue rank leading_edgehsa00020 0.0006562510 6.542000e-03 4.295852e-03 1146 tags=57%, list=16%, signal=48%hsa00190 0.0000000001 6.380000e-09 4.190000e-09 1290 tags=65%, list=19%, signal=54%hsa04330 0.0017383240 1.213763e-02 7.970265e-03 1866 tags=52%, list=27%, signal=38%hsa00040 0.0000006220 1.420000e-05 9.300000e-06 572 tags=76%, list=8%, signal=70%hsa00071 0.0001879800 2.306367e-03 1.514493e-03 1555 tags=70%, list=22%, signal=54%hsa00830 0.0000131000 2.093730e-04 1.374860e-04 573 tags=46%, list=8%, signal=43% core_enrichmenthsa00020 DLD/OGDH/SDHA/SDHC/ACO1/FH/DLST/ACO2/SDHB/OGDHL/PCK2/SUCLG1/MDH1/IDH1/SUCLG2/PCK1hsa00190 NDUFC2/COX11/NDUFS5/COX8A/PPA2/UQCRQ/NDUFA8/NDUFS3/NDUFB10/NDUFA6/NDUFA9/SDHA/NDUFA13/SDHC/NDUFB8/NDUFC1/NDUFB7/COX5A/UQCRC1/NDUFB9/UQCRB/NDUFA11/NDUFA7/NDUFB4/ATP5F1D/COX6C/NDUFS4/ATP5F1E/NDUFS7/COX4I1/ATP5MF/UQCRC2/NDUFS1/UQCRFS1/NDUFA2/NDUFA10/SDHB/NDUFB11/ATP5F1A/NDUFV2/NDUFV1/COX7A2/ATP5MG/NDUFA12/COX7A2L/NDUFS8/NDUFS6/ATP5PD/ATP5PB/COX5B/ATP5F1B/ATP5PF/NDUFB1/COX6B1/COX7C/NDUFV3/UQCR10/ATP5F1C/ATP5PO/ATP5ME/ATP6V0D2/NDUFB2/COX6A1hsa04330 NOTCH3/ADAM17/DTX2/CREBBP/PSEN1/RBPJ/NCOR2/SPEN/SNW1/CTBP2/DVL1/DTX3Lhsa00040 DCXR/AKR1A1/AKR1B1/FGGY/CRYL1/GUSB/UGP2/UGT1A8/AKR1B10/UGDH/UGT2B17/UGT2A3/UGT1A10hsa00071 ECHS1/GCDH/ACAA2/HADHB/CPT1A/HADHA/ACADM/EHHADH/ALDH7A1/ACADVL/ECI1/CPT2/HADH/ADH6/ALDH3A2/ACADSB/ALDH9A1/ACAT1/ADH5/ECI2/ACADS/ADH1B/ADH1Chsa00830 ADH6/RETSAT/HSD17B6/ADH5/DHRS9/UGT1A8/ALDH1A1/UGT2B17/UGT2A3/UGT1A10/ADH1B/ADH1C
my_genelist <- read.csv("dep.csv")> head(my_genelist) name log2fc1 A1BG -0.60604372 A1CF -1.86951993 A2M -0.89628694 ATG4C -0.49728375 ATG5 -0.60780446 ATG7 -0.2009972
1、 step1 将富集结果改为david格式
kegg_david <- keggdata %>% rename(Term = Description) %>% rename(adj_pval = p.adjust) %>% mutate(Genes = lapply(keggdata$core_enrichment,function(x){ gsub("/",",",x) })) %>% mutate(Category = keggdata$X) %>% arrange(desc(NES)) %>% select(Category,ID, Term,Genes,adj_pval)
kegg_david :
2、 step2 将genelist修改为固定格式
kegg_genelist <- my_genelist %>% rename(ID = name) %>% rename(logFC=log2fc) %>% select(ID,logFC)
kegg_genelist :
3、 step3 构建cirl对象
kegg_circ <- circle_dat(kegg_david,kegg_genelist)
GOCircle(kegg_circ)
GOCircle(kegg_circ, zsc.col = c('firebrick3', 'white', 'royalblue3'),# z-score颜色设置 lfc.col = c('firebrick3', 'royalblue3'),# 上调下调颜色设置 label.size = 4, #字体大小,默认5 label.fontface='bold',# 字体格式设置,默认bold table.legend = T, nsub = 10)
领取专属 10元无门槛券
私享最新 技术干货