Last data update: 2014.03.03
R: LEAPFrOG plotting function
LEAPFrOG_plot R Documentation
LEAPFrOG plotting function
Description
Plots offspring and parental admiture proportions in the style of STRUCTURE, the popular population genetic software.
Usage
LEAPFrOG_plot(Results,PopNames,SampNames=NULL)
Arguments
Results
Array of dimensions 3*Npopulations*Noffspring. The first row is for the genotyped offspring and the second two for the unobserved parents. Each cell contains an admixture proportion.
PopNames
Character vector of length J (number of reference populations), Eg. c("Africa","Asia","Europe"). Order of names should correspond with order of parameters in Results.
SampNames
Character vector of sample names, equal to number of rows in Results, or NULL (detault), which will be printed underneath the admixture bars. Most useful when dealing with a small number of samples with distinct identity e.g. c("Hair","Blood","Door Handle","Ballroom","Lead Piping"). If NULL then no labels are printed beneath the plot (more appropriate for simulations or large population samples)
Author(s)
Daniel Crouch & Michael Weale, Department of Medical and Molecular Genetics, King's College London
See Also
LEAPFrOG
,LEAPFrOG_EM
,BEAPFrOG
Examples
#Example with nonsense data -
#10000 random SNP genotypes
#...and uniform, random allele frequencies from two populations.
library(LEAPFrOG)
#Get LEAPFrOG parameter estimates for 10 simulated individuals
Results=array(dim=c(3,2,10))
for(i in 1:10){
z1=LEAPFrOG(sample(0:2,10000,replace=TRUE),cbind(runif(10000,0,1),runif(10000,0,1)))
Results[1,,i]=z1$m #Offspring
Results[2,,i]=z1$P1 #Parent 'A'
Results[3,,i]=z1$P2 #Parent 'B
}
#Now plot these 10 individuals
LEAPFrOG_plot(Results,PopNames=c("PopA","PopB"))
#With sample names:
names=c("Hair","Blood","Door Handle","Ballroom","Lead Piping")
names=c(names,"Briefcase","Toothbrush","Sock","Shirt","Skin")
LEAPFrOG_plot(Results,PopNames=c("PopA","PopB"),SampNames=names)
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(LEAPFrOG)
Loading required package: alabama
Loading required package: numDeriv
Loading required package: MASS
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/LEAPFrOG/LEAPFrOG_plot.Rd_%03d_medium.png", width=480, height=480)
> ### Name: LEAPFrOG_plot
> ### Title: LEAPFrOG plotting function
> ### Aliases: LEAPFrOG_plot
>
> ### ** Examples
>
> #Example with nonsense data -
> #10000 random SNP genotypes
> #...and uniform, random allele frequencies from two populations.
> library(LEAPFrOG)
> #Get LEAPFrOG parameter estimates for 10 simulated individuals
> Results=array(dim=c(3,2,10))
> for(i in 1:10){
+ z1=LEAPFrOG(sample(0:2,10000,replace=TRUE),cbind(runif(10000,0,1),runif(10000,0,1)))
+ Results[1,,i]=z1$m #Offspring
+ Results[2,,i]=z1$P1 #Parent 'A'
+ Results[3,,i]=z1$P2 #Parent 'B
+ }
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13910
Outer iteration: 2
Min(hin): 0.001210085
par: 0.495642 0.50121
fval = 13910
Outer iteration: 3
Min(hin): 0.001125973
par: 0.495663 0.501126
fval = 13910
Outer iteration: 4
Min(hin): 0.001014702
par: 0.49566 0.501015
fval = 13910
Outer iteration: 5
Min(hin): 0.0004311089
par: 0.495664 0.500431
fval = 13910
Outer iteration: 6
Min(hin): 0.0001206886
par: 0.495666 0.500121
fval = 13910
Outer iteration: 7
Min(hin): 6.391165e-05
par: 0.495661 0.500064
fval = 13910
Outer iteration: 8
Min(hin): 3.384565e-05
par: 0.495661 0.500034
fval = 13910
Outer iteration: 9
Min(hin): 1.792356e-05
par: 0.495661 0.500018
fval = 13910
Outer iteration: 10
Min(hin): 9.491743e-06
par: 0.495661 0.500009
fval = 13910
Outer iteration: 11
Min(hin): 5.026522e-06
par: 0.495661 0.500005
fval = 13910
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13780
Outer iteration: 2
Min(hin): 0.001270154
par: 0.488623 0.50127
fval = 13780
Outer iteration: 3
Min(hin): 0.001188919
par: 0.488618 0.501189
fval = 13780
Outer iteration: 4
Min(hin): 0.001072531
par: 0.488619 0.501073
fval = 13780
Outer iteration: 5
Min(hin): 0.0004345696
par: 0.488625 0.500435
fval = 13780
Outer iteration: 6
Min(hin): 0.0001356862
par: 0.488629 0.500136
fval = 13780
Outer iteration: 7
Min(hin): 7.600581e-05
par: 0.488619 0.500076
fval = 13780
Outer iteration: 8
Min(hin): 4.257666e-05
par: 0.48862 0.500043
fval = 13780
Outer iteration: 9
Min(hin): 2.385034e-05
par: 0.48862 0.500024
fval = 13780
Outer iteration: 10
Min(hin): 1.336035e-05
par: 0.48862 0.500013
fval = 13780
Outer iteration: 11
Min(hin): 7.484122e-06
par: 0.48862 0.500007
fval = 13780
Outer iteration: 12
Min(hin): 4.192413e-06
par: 0.48862 0.500004
fval = 13780
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13800
Outer iteration: 2
Min(hin): 0.001245712
par: 0.509918 0.501246
fval = 13800
Outer iteration: 3
Min(hin): 0.001165865
par: 0.50993 0.501166
fval = 13800
Outer iteration: 4
Min(hin): 0.001052458
par: 0.509927 0.501052
fval = 13800
Outer iteration: 5
Min(hin): 0.0004336236
par: 0.509926 0.500434
fval = 13800
Outer iteration: 6
Min(hin): 0.0001311843
par: 0.509924 0.500131
fval = 13800
Outer iteration: 7
Min(hin): 7.217172e-05
par: 0.509927 0.500072
fval = 13800
Outer iteration: 8
Min(hin): 3.970601e-05
par: 0.509927 0.50004
fval = 13800
Outer iteration: 9
Min(hin): 2.184463e-05
par: 0.509927 0.500022
fval = 13800
Outer iteration: 10
Min(hin): 1.201803e-05
par: 0.509927 0.500012
fval = 13800
Outer iteration: 11
Min(hin): 6.611834e-06
par: 0.509927 0.500007
fval = 13800
Outer iteration: 12
Min(hin): 3.637563e-06
par: 0.509927 0.500004
fval = 13800
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13790
Outer iteration: 2
Min(hin): 0.001268999
par: 0.493804 0.501269
fval = 13790
Outer iteration: 3
Min(hin): 0.001187848
par: 0.4938 0.501188
fval = 13790
Outer iteration: 4
Min(hin): 0.001071608
par: 0.4938 0.501072
fval = 13790
Outer iteration: 5
Min(hin): 0.0004345219
par: 0.493806 0.500435
fval = 13790
Outer iteration: 6
Min(hin): 0.0001353487
par: 0.493811 0.500135
fval = 13790
Outer iteration: 7
Min(hin): 7.575573e-05
par: 0.4938 0.500076
fval = 13790
Outer iteration: 8
Min(hin): 4.240257e-05
par: 0.493802 0.500042
fval = 13790
Outer iteration: 9
Min(hin): 2.373376e-05
par: 0.493801 0.500024
fval = 13790
Outer iteration: 10
Min(hin): 1.328438e-05
par: 0.493801 0.500013
fval = 13790
Outer iteration: 11
Min(hin): 7.435598e-06
par: 0.493801 0.500007
fval = 13790
Outer iteration: 12
Min(hin): 4.16189e-06
par: 0.493801 0.500004
fval = 13790
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13950
Outer iteration: 2
Min(hin): 0.00126936
par: 0.514936 0.501269
fval = 13950
Outer iteration: 3
Min(hin): 0.001187587
par: 0.514946 0.501188
fval = 13950
Outer iteration: 4
Min(hin): 0.001071094
par: 0.514945 0.501071
fval = 13950
Outer iteration: 5
Min(hin): 0.0004343708
par: 0.514938 0.500434
fval = 13950
Outer iteration: 6
Min(hin): 0.000134974
par: 0.514933 0.500135
fval = 13950
Outer iteration: 7
Min(hin): 7.550248e-05
par: 0.514945 0.500076
fval = 13950
Outer iteration: 8
Min(hin): 4.223665e-05
par: 0.514944 0.500042
fval = 13950
Outer iteration: 9
Min(hin): 2.362735e-05
par: 0.514944 0.500024
fval = 13950
Outer iteration: 10
Min(hin): 1.321725e-05
par: 0.514944 0.500013
fval = 13950
Outer iteration: 11
Min(hin): 7.393788e-06
par: 0.514944 0.500007
fval = 13950
Outer iteration: 12
Min(hin): 4.136118e-06
par: 0.514944 0.500004
fval = 13950
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13830
Outer iteration: 2
Min(hin): 0.001215565
par: 0.51139 0.501216
fval = 13830
Outer iteration: 3
Min(hin): 0.001138195
par: 0.5114 0.501138
fval = 13830
Outer iteration: 4
Min(hin): 0.001028709
par: 0.511398 0.501029
fval = 13830
Outer iteration: 5
Min(hin): 0.0004328344
par: 0.511397 0.500433
fval = 13830
Outer iteration: 6
Min(hin): 0.0001251721
par: 0.511395 0.500125
fval = 13830
Outer iteration: 7
Min(hin): 6.732495e-05
par: 0.511398 0.500067
fval = 13830
Outer iteration: 8
Min(hin): 3.621161e-05
par: 0.511397 0.500036
fval = 13830
Outer iteration: 9
Min(hin): 1.947686e-05
par: 0.511397 0.500019
fval = 13830
Outer iteration: 10
Min(hin): 1.047587e-05
par: 0.511397 0.50001
fval = 13830
Outer iteration: 11
Min(hin): 5.634579e-06
par: 0.511397 0.500006
fval = 13830
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13900
Outer iteration: 2
Min(hin): 0.001245506
par: 0.494019 0.501246
fval = 13900
Outer iteration: 3
Min(hin): 0.001166066
par: 0.494011 0.501166
fval = 13900
Outer iteration: 4
Min(hin): 0.001052817
par: 0.494013 0.501053
fval = 13900
Outer iteration: 5
Min(hin): 0.0004337158
par: 0.494015 0.500434
fval = 13900
Outer iteration: 6
Min(hin): 0.0001313247
par: 0.494016 0.500131
fval = 13900
Outer iteration: 7
Min(hin): 7.227849e-05
par: 0.494013 0.500072
fval = 13900
Outer iteration: 8
Min(hin): 3.978101e-05
par: 0.494014 0.50004
fval = 13900
Outer iteration: 9
Min(hin): 2.189484e-05
par: 0.494014 0.500022
fval = 13900
Outer iteration: 10
Min(hin): 1.205058e-05
par: 0.494014 0.500012
fval = 13900
Outer iteration: 11
Min(hin): 6.632451e-06
par: 0.494014 0.500007
fval = 13900
Outer iteration: 12
Min(hin): 3.650397e-06
par: 0.494014 0.500004
fval = 13900
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13690
Outer iteration: 2
Min(hin): 0.001406962
par: 0.531491 0.501407
fval = 13680
Outer iteration: 3
Min(hin): 0.001316917
par: 0.531491 0.501317
fval = 13680
Outer iteration: 4
Min(hin): 0.001110796
par: 0.531489 0.501111
fval = 13680
Outer iteration: 5
Min(hin): 0.0004518557
par: 0.531494 0.500452
fval = 13680
Outer iteration: 6
Min(hin): 0.0001667336
par: 0.5315 0.500167
fval = 13680
Outer iteration: 7
Min(hin): 0.0001015635
par: 0.531488 0.500102
fval = 13680
Outer iteration: 8
Min(hin): 6.186416e-05
par: 0.53149 0.500062
fval = 13680
Outer iteration: 9
Min(hin): 3.768276e-05
par: 0.53149 0.500038
fval = 13680
Outer iteration: 10
Min(hin): 2.295334e-05
par: 0.53149 0.500023
fval = 13680
Outer iteration: 11
Min(hin): 1.398135e-05
par: 0.53149 0.500014
fval = 13680
Outer iteration: 12
Min(hin): 8.516327e-06
par: 0.53149 0.500009
fval = 13680
Outer iteration: 13
Min(hin): 5.18747e-06
par: 0.53149 0.500005
fval = 13680
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13960
Outer iteration: 2
Min(hin): 0.00118839
par: 0.509767 0.501188
fval = 13960
Outer iteration: 3
Min(hin): 0.001112887
par: 0.509772 0.501113
fval = 13960
Outer iteration: 4
Min(hin): 0.001006797
par: 0.509771 0.501007
fval = 13960
Outer iteration: 5
Min(hin): 0.0004323098
par: 0.50977 0.500432
fval = 13960
Outer iteration: 6
Min(hin): 0.0001195428
par: 0.509769 0.50012
fval = 13960
Outer iteration: 7
Min(hin): 6.287099e-05
par: 0.509771 0.500063
fval = 13960
Outer iteration: 8
Min(hin): 3.306587e-05
par: 0.50977 0.500033
fval = 13960
Outer iteration: 9
Min(hin): 1.739039e-05
par: 0.50977 0.500017
fval = 13960
Outer iteration: 10
Min(hin): 9.146154e-06
par: 0.50977 0.500009
fval = 13960
Outer iteration: 11
Min(hin): 4.810252e-06
par: 0.50977 0.500005
fval = 13960
Min(hin): 0.001
Outer iteration: 1
Min(hin): 0.001
par: 0.5 0.501
fval = 13780
Outer iteration: 2
Min(hin): 0.001314921
par: 0.492117 0.501315
fval = 13780
Outer iteration: 3
Min(hin): 0.001225994
par: 0.492137 0.501226
fval = 13780
Outer iteration: 4
Min(hin): 0.001102165
par: 0.492135 0.501102
fval = 13780
Outer iteration: 5
Min(hin): 0.0004484126
par: 0.492132 0.500448
fval = 13780
Outer iteration: 6
Min(hin): 0.0001471219
par: 0.492129 0.500147
fval = 13780
Outer iteration: 7
Min(hin): 8.439366e-05
par: 0.492137 0.500084
fval = 13780
Outer iteration: 8
Min(hin): 4.840965e-05
par: 0.492136 0.500048
fval = 13780
Outer iteration: 9
Min(hin): 2.776869e-05
par: 0.492136 0.500028
fval = 13780
Outer iteration: 10
Min(hin): 1.592864e-05
par: 0.492136 0.500016
fval = 13780
Outer iteration: 11
Min(hin): 9.136965e-06
par: 0.492136 0.500009
fval = 13780
Outer iteration: 12
Min(hin): 5.241134e-06
par: 0.492136 0.500005
fval = 13780
> #Now plot these 10 individuals
> LEAPFrOG_plot(Results,PopNames=c("PopA","PopB"))
> #With sample names:
> names=c("Hair","Blood","Door Handle","Ballroom","Lead Piping")
> names=c(names,"Briefcase","Toothbrush","Sock","Shirt","Skin")
> LEAPFrOG_plot(Results,PopNames=c("PopA","PopB"),SampNames=names)
>
>
>
>
>
> dev.off()
null device
1
>