File: GOplot.Rscript

package info (click to toggle)
trinityrnaseq 2.11.0%2Bdfsg-6
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 417,528 kB
  • sloc: perl: 48,420; cpp: 17,749; java: 12,695; python: 3,124; sh: 1,030; ansic: 983; makefile: 688; xml: 62
file content (86 lines) | stat: -rwxr-xr-x 2,993 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#!/usr/bin/env Rscript

suppressPackageStartupMessages(library("argparse"))

parser = ArgumentParser(description="See GOplot documentation: https://wencke.github.io/")
parser$add_argument("--EC_david", help="EC.david input file", required=TRUE)
parser$add_argument("--EC_genelist", help="EC.genelist input file", required=TRUE)
parser$add_argument("--pdf_outfile", help="pdf output filename", required=TRUE)

args = parser$parse_args()

library(GOplot)
EC.david = read.table(args$EC_david, sep='\t', header=T, quote="")
EC.genelist = read.table(args$EC_genelist, sep='\t', header=T)

# plotting commands from: https://wencke.github.io/
circ <- circle_dat(EC.david, EC.genelist)

message("Generating plot pdf file: ", args$pdf_outfile)
pdf(file=args$pdf_outfile)

###############################
## The modified barplot (GOBar)
###############################

## Generate a simple barplot
message("GOBar, circ, BP")
GOBar(subset(circ, category == 'BP'))

## Facet the barplot according to the categories of the terms
message("GOBar, circ, multiple")
GOBar(circ, display = 'multiple')

# Facet the barplot, add a title and change the colour scale for the z-score
message("GOBar, multiple, Z-scores")
GOBar(circ, display = 'multiple', title = 'Z-score coloured barplot', zsc.col = c('yellow', 'black', 'cyan'))


#############################
## The bubble plot (GOBubble)
#############################


# Generate the bubble plot with a label threshold of 3
#message("GOBubble, circ")
#GOBubble(circ, labels = 3)

# Add a title, change the colour of the circles, facet the plot according to the categories and change the label threshold
message("GOBubble, multiple")
GOBubble(circ, title = 'Bubble plot', col = c('orange', 'darkred', 'gold'), display = 'multiple', labels = 3)

## Colour the background according to the category
message("GOBubble, bckgrd color")
GOBubble(circ, title = 'Bubble plot with background colour', display = 'multiple', labels = 3)

# Reduce redundant terms with a gene overlap >= 0.75...
#reduced_circ <- reduce_overlap(circ, overlap = 0.75)
## ...and plot it
#message("GOBubble, reduced")
#GOBubble(reduced_circ, labels = 2.8)



###########################################################################################
## Circular visualization of the results of gene- annotation enrichment analysis (GOCircle)
###########################################################################################


#Generate a circular visualization of the results of gene- annotation enrichment analysis
message("GOCircle")
GOCircle(circ)

# Generate a circular visualization of selected terms
# (set the ids to your liking)
#IDs <- c('GO:0007507', 'GO:0001568', 'GO:0001944', 'GO:0048729', 'GO:0048514', 'GO:0005886', 'GO:0008092', 'GO:0008047')
#GOCircle(circ, nsub = IDs)

# Generate a circular visualization for 10 terms
message("GOcircule, nsub=10")
GOCircle(circ, nsub = 10)


##### Now, the rest is up to you. ;-)

quit(save = "yes", status = 0, runLast = FALSE)