Mercurial > repos > dereeper > mlmm
annotate source_library/plot_MLMM.Ago.r @ 1:380b364980f9 draft default tip
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
author | dereeper |
---|---|
date | Mon, 16 Apr 2018 08:50:05 -0400 |
parents | |
children |
rev | line source |
---|---|
1
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
1 ## fonction ########################################################################### |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
2 plot_MLMM.Ago<-function(x) { |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
3 output1 <-x$out[order(x$out$Pos),] |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
4 output_ok<-output1[order(output1$Chr),] |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
5 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
6 maxpos<-c(0,cumsum(as.numeric(aggregate(output_ok$Pos,list(output_ok$Chr),max)$x+max(cumsum(as.numeric(aggregate(output_ok$Pos,list(output_ok$Chr),max)$x)))/200))) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
7 plot_col<-rep(c('gray10','gray60'),ceiling(max(unique(output_ok$Chr))/2)) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
8 # plot_col<-c('blue','darkgreen','red','cyan','purple') |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
9 size<-aggregate(output_ok$Pos,list(output_ok$Chr),length)$x |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
10 a<-rep(maxpos[1],size[1]) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
11 b<-rep(plot_col[1],size[1]) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
12 for (i in 2:max(unique(output_ok$Chr))){ |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
13 a<-c(a,rep(maxpos[i],size[i])) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
14 b<-c(b,rep(plot_col[i],size[i]))} |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
15 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
16 output_ok$xpos<-output_ok$Pos+a |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
17 output_ok$col<-b |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
18 output_ok$col[output_ok$mk=='qtl']<-'cyan' |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
19 output_ok$col[output_ok$SNP %in% x$cof]<-'red' |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
20 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
21 d<-(aggregate(output_ok$xpos,list(output_ok$Chr),min)$x+aggregate(output_ok$xpos,list(output_ok$Chr),max)$x)/2 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
22 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
23 plot(output_ok$xpos,-log10(output_ok$pval),col=output_ok$col,pch=20,ylab='-log10(pval)',xaxt='n',xlab='chromosome') |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
24 axis(1,tick=FALSE,at=d,labels=c(1:max(unique(output_ok$Chr)))) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
25 xline(output_ok$xpos[output_ok$mk=='qtl'], col='cyan', lwd=0.1) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
26 abline(h=x$bonf_thresh,lty=3,col='black') |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
27 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
28 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
29 if (length(output_ok$pval[-log10(output_ok$pval) > x$bonf_thresh]) > 0) { |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
30 text(output_ok$xpos[-log10(output_ok$pval) > x$bonf_thresh], -log10(output_ok$pval[-log10(output_ok$pval) > x$bonf_thresh]), output_ok$SNP[-log10(output_ok$pval) > x$bonf_thresh], pos=3, cex=0.7) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
31 legend("topright", lty=3, paste("bonf thresh :", x$bonf_thresh ,sep=" ")) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
32 } else { |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
33 legend("topright", lty=3, paste("bonf thresh :", x$bonf_thresh ,sep=" ")) |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
34 } |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
35 |
380b364980f9
planemo upload commit 475f4d7d8442a0d75e103af326ae5881c4d2a4ac
dereeper
parents:
diff
changeset
|
36 } |