ape (version 1.2-1)

skylineplot: Drawing Skyline Plot Graphs

Description

These functions provide various ways to draw skyline plot graphs on the current graphical device. Note that skylineplot(z, ...) is simply a shortcut for plot(skyline(z, ...)). The skyline plot itself is an estimate of effective population size through time, and is computed using the function skyline.

Usage

## S3 method for class 'skyline':
plot(x, reverse.time = FALSE, \dots)
## S3 method for class 'skyline':
lines(x, reverse.time = FALSE, \dots)
skylineplot(z, ...)
skylineplot.deluxe(tree, ...)

Arguments

x
skyline plot data (i.e. an object of class "skyline").
z
Either an ultrametric tree (i.e. an object of class "phylo"), or coalescent intervals (i.e. an object of class "coalescentIntervals"), or collapsed coalescent intervals (i.e. an object of class "collapsedI
tree
ultrametric tree (i.e. an object of class "phylo").
...
further arguments to be passed to skyline() and plot().
reverse.time
Option that determines whether the time axis in the skyline plot runs from the past to the present (the default) or from the present to the past.

Details

See skyline for more details (incl. references) about the skyline plot method.

See Also

plot and lines for the basic plotting function in R, coalescent.intervals, skyline

Examples

Run this code
library(ape)

# get tree
data("hivtree.newick") # example tree in NH format
tree.hiv <- read.tree(text = hivtree.newick) # load tree


#### classic skyline plot
skylineplot(tree.hiv) # shortcut


#### plot classic and generalized skyline plots and estimate epsilon
sk.opt <- skylineplot.deluxe(tree.hiv) 
sk.opt$epsilon


#### classic and generalized skyline plot ####
sk1 <- skyline(tree.hiv)   
sk2 <- skyline(tree.hiv, 0.0119) 

plot(sk1, col=c(grey(.8),1), reverse.time=TRUE)
lines(sk2, reverse.time=TRUE)
legend(.15,500, c("classic", "generalized"), col=c(grey(.8),1),lty=1)


#### various skyline plots for different epsilons
layout(mat= matrix(1:6,2,3,byrow=TRUE))
ci <- coalescent.intervals(tree.hiv)
plot(skyline(ci, 0.0));title(main="0.0")
plot(skyline(ci, 0.007));title(main="0.007")
plot(skyline(ci, 0.0119),col=4);title(main="0.0119")
plot(skyline(ci, 0.02));title(main="0.02")
plot(skyline(ci, 0.05));title(main="0.05")
plot(skyline(ci, 0.1));title(main="0.1")
layout(mat= matrix(1:1,1,1,byrow=TRUE))

Run the code above in your browser using DataCamp Workspace