annotate aa_histogram.r @ 104:603a10976e9c draft

Uploaded
author davidvanzessen
date Wed, 22 Jun 2016 10:07:28 -0400
parents e6bc976760d4
children e4957ad476a2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
1 library(ggplot2)
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
2
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
3 args <- commandArgs(trailingOnly = TRUE)
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
4
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
5 input = args[1]
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
6 outfile = args[2]
104
603a10976e9c Uploaded
davidvanzessen
parents: 102
diff changeset
7 gene = args[3]
26
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
8
56
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
9 print("---------------- read input ----------------")
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
10
49
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
11 dat = read.table(input, sep="\t", fill=T, header=T, quote="")
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
12
56
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
13 print("---------------- as numeric ----------------")
49
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
14
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
15 mutations.at.position = as.numeric(dat[1,])
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
16 aa.at.position = as.numeric(dat[2,])
26
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
17
56
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
18 print("---------------- freq data.frame ----------------")
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
19
49
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
20 dat_freq = mutations.at.position / aa.at.position
26
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
21 dat_dt = data.frame(i=1:length(dat_freq), freq=dat_freq)
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
22
56
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
23 print("---------------- weird stuff ----------------")
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
24
49
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
25 options(width=220)
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
26
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
27 print(dat[,20:40])
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
28
51
d4e72eeea640 Uploaded
davidvanzessen
parents: 49
diff changeset
29 print(dat_dt) #need this or it will fail????
d4e72eeea640 Uploaded
davidvanzessen
parents: 49
diff changeset
30
56
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
31 print("---------------- plot ----------------")
a4317b006d70 Uploaded
davidvanzessen
parents: 51
diff changeset
32
67
67a9ddf6a8f5 Uploaded
davidvanzessen
parents: 57
diff changeset
33 #also need these two, I don't even know...
67a9ddf6a8f5 Uploaded
davidvanzessen
parents: 57
diff changeset
34 print(paste("dat_freq", length(dat_freq)))
67a9ddf6a8f5 Uploaded
davidvanzessen
parents: 57
diff changeset
35 print(paste("dat_dt", nrow(dat_dt)))
67a9ddf6a8f5 Uploaded
davidvanzessen
parents: 57
diff changeset
36
26
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
37 m = ggplot(dat_dt, aes(x=i, y=freq)) + theme(axis.text.x = element_text(angle = 90, hjust = 1))
82
564c4f6da203 Uploaded
davidvanzessen
parents: 67
diff changeset
38 m = m + geom_bar(stat="identity", colour = "black", fill = "darkgrey", alpha=0.8) + scale_x_continuous(breaks=1:length(dat_freq), labels=1:length(dat_freq))
49
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
39 m = m + annotate("segment", x = 0.5, y = -0.05, xend=26.5, yend=-0.05, colour="darkgreen", size=1) + annotate("text", x = 13, y = -0.1, label="FR1")
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
40 m = m + annotate("segment", x = 26.5, y = -0.07, xend=38.5, yend=-0.07, colour="darkblue", size=1) + annotate("text", x = 32.5, y = -0.15, label="CDR1")
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
41 m = m + annotate("segment", x = 38.5, y = -0.05, xend=55.5, yend=-0.05, colour="darkgreen", size=1) + annotate("text", x = 47, y = -0.1, label="FR2")
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
42 m = m + annotate("segment", x = 55.5, y = -0.07, xend=65.5, yend=-0.07, colour="darkblue", size=1) + annotate("text", x = 60.5, y = -0.15, label="CDR2")
5c6b9e99d576 Uploaded
davidvanzessen
parents: 29
diff changeset
43 m = m + annotate("segment", x = 65.5, y = -0.05, xend=104.5, yend=-0.05, colour="darkgreen", size=1) + annotate("text", x = 85, y = -0.1, label="FR3")
104
603a10976e9c Uploaded
davidvanzessen
parents: 102
diff changeset
44 m = m + expand_limits(y=c(-0.1,1)) + xlab("AA position") + ylab("Frequency") + ggtitle(paste(gene, "AA mutation frequency"))
57
cb66d6dd1e66 Uploaded
davidvanzessen
parents: 56
diff changeset
45
cb66d6dd1e66 Uploaded
davidvanzessen
parents: 56
diff changeset
46 print("---------------- write/print ----------------")
cb66d6dd1e66 Uploaded
davidvanzessen
parents: 56
diff changeset
47
102
e6bc976760d4 Uploaded
davidvanzessen
parents: 82
diff changeset
48 print("writing dat_dt") #need this
104
603a10976e9c Uploaded
davidvanzessen
parents: 102
diff changeset
49 write.table(dat_dt, paste(dirname(outfile), "/aa_histogram_", gene, ".txt", sep=""), sep="\t",quote=F,row.names=F,col.names=T)
102
e6bc976760d4 Uploaded
davidvanzessen
parents: 82
diff changeset
50 print("writing png") #also need this, file is haunted
26
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
51 png(filename=outfile, width=1280, height=720)
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
52 print(m)
2433a1e110e1 Uploaded
davidvanzessen
parents:
diff changeset
53 dev.off()