Commit a4fd034b authored by Kosmas Hench's avatar Kosmas Hench
Browse files

update suppl fig documentation

parent 5ddd61bf
Loading
Loading
Loading
Loading
+26 −0
Original line number Diff line number Diff line
ID	rID	population
28383	R28383	H. unicolor
28384	R28384	H. puella
28385	R28385	H. nigricans
28387	R28387	H. nigricans
28390	R28390	H. nigricans
28391	R28391	H. unicolor
28394	R28394	H. nigricans
28399	R28399	H. nigricans
AG9RX46	RAG9RX46	H. nigricans
AG9RX47	RAG9RX47	H. puella
AG9RX48	RAG9RX48	H. puella
AG9RX49	RAG9RX49	H. nigricans
AG9RX50	RAG9RX50	H. nigricans
AG9RX51	RAG9RX51	H. puella
AG9RX52	RAG9RX52	H. nigricans
AG9RX53	RAG9RX53	H. puella
AG9RX54	RAG9RX54	H. unicolor
AG9RX55	RAG9RX55	H. unicolor
PL17_01	RPL17_01	H. unicolor
PL17_02	RPL17_02	H. puella
PL17_04	RPL17_04	H. puella
PL17_16	RPL17_16	H. puella
PL17_17	RPL17_17	H. puella
PL17_18	RPL17_18	H. puella
28386	R28386
+25 −0
Original line number Diff line number Diff line
ids	population
R28383	uni
R28384	pue
R28385	nig
R28387	nig
R28390	nig
R28391	uni
R28394	nig
R28399	nig
RAG9RX46	nig
RAG9RX47	pue
RAG9RX48	pue
RAG9RX49	nig
RAG9RX50	nig
RAG9RX51	pue
RAG9RX52	nig
RAG9RX53	pue
RAG9RX54	uni
RAG9RX55	uni
RPL17_01	uni
RPL17_02	pue
RPL17_04	pue
RPL17_16	pue
RPL17_17	pue
RPL17_18	pue
+14376 −0

File added.

Preview size limit exceeded, changes collapsed.

+27472 −0

File added.

Preview size limit exceeded, changes collapsed.

+213 −0
Original line number Diff line number Diff line
trplot <- function(sel){
  files <- c("global","boc","bel","hon","pue","nig","uni","nig-pue","nig-uni","pue-uni")
  data <- read.csv(paste('../../2_output/08_popGen/08_LD_extended/',files[sel],'.ext-10000-bins.txt',sep=''),sep='\t')
  message(files[sel])
  
  s1=5760000;s2=1884000;s3=12860000;s4=17745000;s5=20149000;s6=22085000;s7=22445000;s8=13730000
  e2=2134000;e3=13110000;e5=20399000;e6=22335000
  stp=20000;lALL=250000
  
  scling <- c(-s1,
              -s2+(lALL+stp),
              -s3+((lALL+stp)*2),
              -s4+((lALL+stp)*3),
              -s5+((lALL+stp)*4),
              -s6+((lALL+stp)*5),
              -s7+((lALL+stp)*6),
              -s8+((lALL+stp)*7))
  
  dt <- data %>% mutate(miX = floor(Mx/10000),miY=floor(My/10000))
  genes <- data.frame(start=c(5884279,2009113,12992396,17871610,20186151,22228342,22553187,22556763,22561894,22573388,13862931),
                      end=c(5878614,2010303,12976894,17873915,20347811,22225149,22555052,22559742,22566321,22575503,13884003),
                      sclr=c(1,2,3,4,5,6,7,7,7,7,8),
                      LG=c("LG04","LG08","LG08","LG09","LG12","LG12","LG17","LG17","LG17","LG17","LG20"),
                      name=c("ednrb","foxd3","rorb","sox10","casz1","hoxc13a","sws2a\u03B2","sws2a\u03B1","sws2b","lws","invs"))
  genes <- genes %>% mutate(Nx1 = (start+scling[sclr])/10000,Nx2 = (end+scling[sclr])/10000,
                            labPOS = (Nx1+Nx2)/2)
  genes$labPOS[genes$name %in% c("sws2a\u03B1","sws2a\u03B2","sws2b","lws")] <- genes$labPOS[genes$name %in% c("sws2a\u03B1","sws2a\u03B2","sws2b","lws")]+c(-7,-3,5,9)
  
  GZrS <- 40000;GZrS2 <- 20000; #gene zoom offset
  BS <- c(-2,2,       # ednrb
          2,-2,       # foxd3
          -2.5,2.5,   # rorb
          2,-2,       # sox10
          -5,5,       # casz1
          -3,3,       # hoxc13a
          -11,-6,     # sws2a beta
          -.1,-5,     # sws2a alpha
          7,2,        # sws2b
          8,11,       # lws
          1,-1)*10000 # invs   ## Backshifter for gene zoom
  OPSoffset <- 2.5*10000 # correcting the zoom on lws & sws2abeta
  GZdf <- data.frame(x=c(genes$start[1],genes$end[1],genes$end[1]+GZrS+BS[1],genes$start[1]+GZrS+BS[2],genes$start[1],
                         genes$start[2],genes$end[2],genes$end[2]+GZrS+BS[3],genes$start[2]+GZrS+BS[4],genes$start[2],
                         genes$start[3],genes$end[3],genes$end[3]+GZrS+BS[5],genes$start[3]+GZrS+BS[6],genes$start[3],
                         genes$start[4],genes$end[4],genes$end[4]+GZrS+BS[7],genes$start[4]+GZrS+BS[8],genes$start[4],
                         genes$start[5],genes$end[5],genes$end[5]+GZrS+BS[9],genes$start[5]+GZrS+BS[10],genes$start[5],
                         genes$start[6],genes$end[6],genes$end[6]+GZrS+BS[11],genes$start[6]+GZrS+BS[12],genes$start[6],
                         genes$start[7],genes$end[7],genes$end[7]+GZrS+BS[13]-OPSoffset,genes$start[7]+GZrS+BS[14]-OPSoffset,genes$start[7],
                         genes$start[8],genes$end[8],genes$end[8]+GZrS+BS[15],genes$start[8]+GZrS+BS[16],genes$start[8],
                         genes$start[9],genes$end[9],genes$end[9]+GZrS+BS[17],genes$start[9]+GZrS+BS[18],genes$start[9],
                         genes$start[10],genes$end[10],genes$end[10]+GZrS+BS[19]-OPSoffset,genes$start[10]+GZrS+BS[20]-OPSoffset,genes$start[10],
                         genes$start[11],genes$end[11],genes$end[11]+GZrS+BS[21],genes$start[11]+GZrS+BS[22],genes$start[11])+GZrS2,
                     y=c(genes$start[1],genes$end[1],genes$end[1]-GZrS+BS[1],genes$start[1]-GZrS+BS[2],genes$start[1],
                         genes$start[2],genes$end[2],genes$end[2]-GZrS+BS[3],genes$start[2]-GZrS+BS[4],genes$start[2],
                         genes$start[3],genes$end[3],genes$end[3]-GZrS+BS[5],genes$start[3]-GZrS+BS[6],genes$start[3],
                         genes$start[4],genes$end[4],genes$end[4]-GZrS+BS[7],genes$start[4]-GZrS+BS[8],genes$start[4],
                         genes$start[5],genes$end[5],genes$end[5]-GZrS+BS[9],genes$start[5]-GZrS+BS[10],genes$start[5],
                         genes$start[6],genes$end[6],genes$end[6]-GZrS+BS[11],genes$start[6]-GZrS+BS[12],genes$start[6],
                         genes$start[7],genes$end[7],genes$end[7]-GZrS+BS[13]+OPSoffset,genes$start[7]-GZrS+BS[14]+OPSoffset,genes$start[7],
                         genes$start[8],genes$end[8],genes$end[8]-GZrS+BS[15],genes$start[8]-GZrS+BS[16],genes$start[8],
                         genes$start[9],genes$end[9],genes$end[9]-GZrS+BS[17],genes$start[9]-GZrS+BS[18],genes$start[9],
                         genes$start[10],genes$end[10],genes$end[10]-GZrS+BS[19]+OPSoffset,genes$start[10]-GZrS+BS[20]+OPSoffset,genes$start[10],
                         genes$start[11],genes$end[11],genes$end[11]-GZrS+BS[21],genes$start[11]-GZrS+BS[22],genes$start[11])-GZrS2,
                     grp=rep(letters[1:11],each=5)) %>% 
    mutate(sclr=rep(c(1,2,3,4,5,6,7,7,7,7,8),each=5),
           Nx1 = (x+scling[sclr])/10000,
           Nx2 = (y+scling[sclr])/10000)
  
  clr = c(viridis::inferno(5)[c(1,1:5)])
  Gcol <- '#3bb33b'
  Zcol = rgb(.94,.94,.94)
  LGoffset <- 15
  GLABoffset <- 8
  if(sel %in% c(1,8)){
    rS <- 100000 # width of grey annotation band
    zmRange <- data.frame(x=c(s1,s1+lALL,s1+lALL+rS,s1+rS,s1,
                              s2,s2+lALL,s2+lALL+rS,s2+rS,s2,
                              s3,s3+lALL,s3+lALL+rS,s3+rS,s3,
                              s4,s4+lALL,s4+lALL+rS,s4+rS,s4,
                              s5,s5+lALL,s5+lALL+rS,s5+rS,s5,
                              s6,s6+lALL,s6+lALL+rS,s6+rS,s6,
                              s7,s7+lALL,s7+lALL+rS,s7+rS,s7,
                              s8,s8+lALL,s8+lALL+rS,s8+rS,s8),
                          y=c(s1,s1+lALL,s1+lALL-rS,s1-rS,s1,
                              s2,s2+lALL,s2+lALL-rS,s2-rS,s2,
                              s3,s3+lALL,s3+lALL-rS,s3-rS,s3,
                              s4,s4+lALL,s4+lALL-rS,s4-rS,s4,
                              s5,s5+lALL,s5+lALL-rS,s5-rS,s5,
                              s6,s6+lALL,s6+lALL-rS,s6-rS,s6,
                              s7,s7+lALL,s7+lALL-rS,s7-rS,s7,
                              s8,s8+lALL,s8+lALL-rS,s8-rS,s8),
                          grp=rep(letters[1:8],each=5)) %>% 
      mutate(sclr=rep(1:8,each=5),
             Nx1 = (x+scling[sclr])/10000-1,
             Nx2 = (y+scling[sclr])/10000)
    rS2 <- .75*rS
    zmRange2 <- data.frame(x=c(s1,s1+lALL,s1+lALL+rS2,s1+rS2,s1,
                               s2,s2+lALL,s2+lALL+rS2,s2+rS2,s2,
                               s3,s3+lALL,s3+lALL+rS2,s3+rS2,s3,
                               s4,s4+lALL,s4+lALL+rS2,s4+rS2,s4,
                               s5,s5+lALL,s5+lALL+rS2,s5+rS2,s5,
                               s6,s6+lALL,s6+lALL+rS2,s6+rS2,s6,
                               s7,s7+lALL,s7+lALL+rS2,s7+rS2,s7,
                               s8,s8+lALL,s8+lALL+rS2,s8+rS2,s8),
                           y=c(s1,s1+lALL,s1+lALL-rS2,s1-rS2,s1,
                               s2,s2+lALL,s2+lALL-rS2,s2-rS2,s2,
                               s3,s3+lALL,s3+lALL-rS2,s3-rS2,s3,
                               s4,s4+lALL,s4+lALL-rS2,s4-rS2,s4,
                               s5,s5+lALL,s5+lALL-rS2,s5-rS2,s5,
                               s6,s6+lALL,s6+lALL-rS2,s6-rS2,s6,
                               s7,s7+lALL,s7+lALL-rS2,s7-rS2,s7,
                               s8,s8+lALL,s8+lALL-rS2,s8-rS2,s8),
                           grp=rep(letters[1:8],each=5)) %>% 
      mutate(sclr=rep(1:8,each=5),
             Nx1 = (x+scling[sclr])/10000-1,
             Nx2 = (y+scling[sclr])/10000)
    
    rS3 <- .07*rS
    zmRange3 <- data.frame(x=c(s1,s1+lALL,s1+lALL+rS3,s1+rS3,s1,
                               s2,s2+lALL,s2+lALL+rS3,s2+rS3,s2,
                               s3,s3+lALL,s3+lALL+rS3,s3+rS3,s3,
                               s4,s4+lALL,s4+lALL+rS3,s4+rS3,s4,
                               s5,s5+lALL,s5+lALL+rS3,s5+rS3,s5,
                               s6,s6+lALL,s6+lALL+rS3,s6+rS3,s6,
                               s7,s7+lALL,s7+lALL+rS3,s7+rS3,s7,
                               s8,s8+lALL,s8+lALL+rS3,s8+rS3,s8),
                           y=c(s1,s1+lALL,s1+lALL-rS3,s1-rS3,s1,
                               s2,s2+lALL,s2+lALL-rS3,s2-rS3,s2,
                               s3,s3+lALL,s3+lALL-rS3,s3-rS3,s3,
                               s4,s4+lALL,s4+lALL-rS3,s4-rS3,s4,
                               s5,s5+lALL,s5+lALL-rS3,s5-rS3,s5,
                               s6,s6+lALL,s6+lALL-rS3,s6-rS3,s6,
                               s7,s7+lALL,s7+lALL-rS3,s7-rS3,s7,
                               s8,s8+lALL,s8+lALL-rS3,s8-rS3,s8),
                           grp=rep(letters[1:8],each=5)) %>% 
      mutate(sclr=rep(1:8,each=5),
             Nx1 = (x+scling[sclr])/10000-1,
             Nx2 = (y+scling[sclr])/10000)
    
    zmLab <- data.frame(x=c(s1+.5*lALL,s2+.5*lALL,s3+.5*lALL,s4+.5*lALL,
                            s5+.5*lALL,s6+.5*lALL,s7+.5*lALL,s8+.5*lALL),
                        label=c("LG4 (E)","LG08 (F)","LG08 (G)",'LG09 (A)','LG12 (B)','LG12 (C)','LG17 (D)',"LG20 (H)")) %>%  
      mutate(sclr=1:8, Nx= (x+scling[sclr])/10000)
    
    zmEND <- data.frame(x=c(s1,s1+lALL,
                            s2,s2+lALL,
                            s3,s3+lALL,
                            s4,s4+lALL,
                            s5,s5+lALL,
                            s6,s6+lALL,
                            s7,s7+lALL,
                            s8,s8+lALL)) %>% 
      mutate(sclr=rep(1:8,each=2),
             Nx = ((x+scling[sclr])/10000)+rep(c(2.5,-4),8),
             label=round((x/1000000),2))
    DG <- rgb(.4,.4,.4)
    gnShift <- c(rep(0,6),3.5,0,0,3.5,0)
    
    textSCALE1 <- c(1.8,rep(NA,6),.9)
    textSCALE2 <- c(2,rep(NA,6),1)
    textSCALE3 <- c(2.5,rep(NA,6),1.25)
    
    p1 <- ggplot(dt %>% filter(!is.na(Mval)),aes(fill=Mval))+
      coord_equal()+
      geom_polygon(inherit.aes = F,data=zmRange,
                   aes(x=Nx1+1,y=Nx2-1,group=grp),fill='lightgray')+
      geom_polygon(inherit.aes = F,data=zmRange2,
                   aes(x=Nx1+11,y=Nx2-11,group=grp),fill=DG)+
      geom_polygon(inherit.aes = F,data=zmRange3,
                   aes(x=Nx1+1.1,y=Nx2-1.1,group=grp),fill=DG)+
      geom_polygon(inherit.aes = F,data=GZdf,
                   aes(x=Nx1,y=Nx2,group=grp),fill=Zcol)+
      geom_segment(inherit.aes = F,data=genes,
                   aes(x=Nx1+1,y=Nx1-1,xend=Nx2+1,yend=Nx2-1),
                   col=Gcol,size=1.5)+
      geom_tile(aes(x=miX,y=miY))+
      geom_text(inherit.aes = F,data=zmEND,
                aes(x=Nx+LGoffset,y=Nx-LGoffset,label=paste(label,'\n(Mb)')),
                angle=45,size=textSCALE1[sel])+
      geom_text(inherit.aes = F,data=genes,
                aes(x=labPOS+GLABoffset-gnShift,
                    y=labPOS-GLABoffset+gnShift,
                    label=name),
                angle=-45,fontface='italic',size=textSCALE2[sel])+
      geom_text(inherit.aes = F,data=zmLab,
                aes(x=Nx+LGoffset+5.5,y=Nx-LGoffset-5.5,label=label),
                angle=-45,fontface='bold',size=textSCALE3[sel],col='black')+
      scale_x_continuous(expand=c(0,0))+
      scale_y_continuous(expand=c(0,0),
                         trans = 'reverse')+
      scale_fill_gradientn(name=expression(bar(r^2)),colours=clr,
                           values=rescale(c(1,.08,.03,.015,.01,0)),
                           limits=c(0,1),guide = 'legend',breaks=c(0,.005,.01,.02,.03,.1,1))+
      scale_color_manual(values=viridis_pal(option='A')(6))+theme_void()+
      theme(legend.position = c(.7,.75),legend.direction = 'vertical')
  } else {
    p1 <- ggplot(dt %>% filter(!is.na(Mval)),aes(fill=Mval))+
      coord_equal()+
      geom_segment(inherit.aes = F,data=genes,
                   aes(x=Nx1+1.5,y=Nx1-1.5,xend=Nx2+1.5,yend=Nx2-1.5),
                   col=Gcol,size=1)+
      geom_tile(aes(x=miX,y=miY))+
      scale_x_continuous(expand=c(0,0))+
      scale_y_continuous(expand=c(0,0),
                         trans = 'reverse')+
      scale_fill_gradientn(name=expression(bar(r^2)),colours=clr,
                           values=rescale(c(1,.08,.03,.015,.01,0)),
                           limits=c(0,1),guide = 'legend',breaks=c(0,.005,.01,.02,.03,.1,1))+
      scale_color_manual(values=viridis_pal(option='A')(6))+theme_void()+
      theme(legend.position = c(.7,.75),legend.direction = 'vertical')
  }
  return(p1)
}
 No newline at end of file
Loading