## ----echo = FALSE------------------------------------------------------------- knitr::opts_chunk$set(collapse = TRUE, comment = "#>") ## ----------------------------------------------------------------------------- library(conStruct) data(data.block) ## ----eval=FALSE--------------------------------------------------------------- # help(make.all.the.plots) ## ----eval=FALSE--------------------------------------------------------------- # make.all.the.plots(conStruct.results = conStruct.results, # data.block = data.block, # prefix = "example", # layer.colors = NULL) # # generates a bunch of pdf figures ## ----echo=FALSE--------------------------------------------------------------- admix.props <- matrix( c(0.086, 0.000, 0.500, 0.505, 0.099, 0.052, 0.024, 0.007, 0.800, 0.000, 0.216, 0.744, 0.917, 0.199, 0.469, 0.000, 0.783, 0.298, 0.329, 0.446, 0.000, 0.000, 0.637, 0.903, 0.000, 0.000, 0.000, 0.012, 0.021, 0.000, 0.000, 0.089, 0.000, 0.554, 0.002, 0.000, 0.000, 0.095, 0.020, 0.001, 0.001, 0.011, 0.000, 0.200, 0.000, 0.060, 0.053, 0.082, 0.036, 0.013, 0.000, 0.062, 0.169, 0.137, 0.029, 0.001, 0.000, 0.178, 0.079, 0.000, 0.999, 1.000, 0.988, 0.979, 0.975, 1.000, 0.744, 0.984, 0.435, 0.998, 0.914, 1.000, 0.405, 0.475, 0.900, 0.947, 0.965, 0.993, 0.000, 1.000, 0.725, 0.203, 0.000, 0.765, 0.518, 1.000, 0.154, 0.533, 0.534, 0.525, 0.999, 1.000, 0.185, 0.018, 1.000, 0.001, 0.000, 0.000, 0.000, 0.025, 0.000, 0.167, 0.016, 0.012, 0.000),nrow=35,ncol=3) ## ----eval=FALSE--------------------------------------------------------------- # load("my_conStruct.results.Robj") # # # assign the MAP admixture proportions from # # the first MCMC chain to a variable # # with a new name # # admix.props <- conStruct.results$chain_1$MAP$admix.proportions ## ----fig.width=8,fig.height=4------------------------------------------------- # make a STRUCTURE plot using the # maximum a posteriori (MAP) estimates # from the first chain of a conStruct run make.structure.plot(admix.proportions = admix.props) ## ----fig.width=8,fig.height=4------------------------------------------------- # order by membership in layer 1 make.structure.plot(admix.proportions = admix.props, sort.by = 1) # re-order the stacking order of the layers make.structure.plot(admix.proportions = admix.props, layer.order = c(2,1,3), sort.by = 2) # provide a custom sample ordering # in this case by sample latitude make.structure.plot(admix.proportions = admix.props, sample.order = order(data.block$coords[,2])) # add sample names make.structure.plot(admix.proportions = admix.props, sample.names = row.names(data.block$coords), mar = c(4.5,4,2,2)) ## ----fig.width=6,fig.height=6------------------------------------------------- # make an admix pie plot using the # maximum a posteriori (MAP) estimates # from the first chain of a conStruct run make.admix.pie.plot(admix.proportions = admix.props, coords = data.block$coords) # increase pie chart size make.admix.pie.plot(admix.proportions = admix.props, coords = data.block$coords, radii = 4) # zoom in on a subsection of the map make.admix.pie.plot(admix.proportions = admix.props, coords = data.block$coords, x.lim = c(-130,-120), y.lim = c(49,56)) ## ----fig.width=6,fig.height=6------------------------------------------------- # add pie plot to an existing map # make the desired map maps::map(xlim = range(data.block$coords[,1]) + c(-5,5), ylim = range(data.block$coords[,2])+c(-2,2), col="gray") # add the admixture pie plot make.admix.pie.plot(admix.proportions = admix.props, coords = data.block$coords, add = TRUE) ## ----eval=FALSE--------------------------------------------------------------- # # load output files from a run with # # the spatial model and K=4 # load("spK4.conStruct.results.Robj") # load("spK4.data.block.Robj") # # # assign to new variable names # spK4_cr <- conStruct.results # spK4_db <- data.block # # # load output files from a run with # # the spatial model and K=3 # load("spK3.conStruct.results.Robj") # load("spK3.data.block.Robj") # # # assign to new variable names # spK3_cr <- conStruct.results # spK3_db <- data.block # # # compare the two runs # compare.two.runs(conStruct.results1=spK3_cr, # data.block1=spK3_db, # conStruct.results2=spK4_cr, # data.block2=spK4_db, # prefix="spK3_vs_spK4") # # # generates a bunch of pdf figures