Learn R Programming

CDVine (version 1.4)

CDVineTreePlot: Plot function for C- or D-vine trees

Description

This function plots one or all trees of a given C- and D-vine copula model.

Usage

CDVineTreePlot(data=NULL, family, par=rep(0,length(family)), par2=rep(0,length(family)), names=NULL, type, method="mle", max.df=30, max.BB=list(BB1=c(5,6),BB6=c(6,6),BB7=c(5,6),BB8=c(6,1)), tree="ALL", edge.labels=c("family"), P=NULL, ...)

Arguments

data
An N x d data matrix (with uniform margins); default: data = NULL.
family
A d*(d-1)/2 vector of pair-copula families with values 0 = independence copula 1 = Gaussian copula 2 = Student t copula (t-copula) 3 = Clayton copula 4 = Gumbel copula 5 = Frank copula 6 = Joe copula 7 = BB1 copula 8 = BB6 copula 9 = BB7 copula 10 = BB8 copula 13 = rotated Clayton copula (180 degrees; ``survival Clayton'') 14 = rotated Gumbel copula (180 degrees; ``survival Gumbel'') 16 = rotated Joe copula (180 degrees; ``survival Joe'') 17 = rotated BB1 copula (180 degrees; ``survival BB1'') 18 = rotated BB6 copula (180 degrees; ``survival BB6'') 19 = rotated BB7 copula (180 degrees; ``survival BB7'') 20 = rotated BB8 copula (180 degrees; ``survival BB8'') 23 = rotated Clayton copula (90 degrees) 24 = rotated Gumbel copula (90 degrees) 26 = rotated Joe copula (90 degrees) 27 = rotated BB1 copula (90 degrees) 28 = rotated BB6 copula (90 degrees) 29 = rotated BB7 copula (90 degrees) 30 = rotated BB8 copula (90 degrees) 33 = rotated Clayton copula (270 degrees) 34 = rotated Gumbel copula (270 degrees) 36 = rotated Joe copula (270 degrees) 37 = rotated BB1 copula (270 degrees) 38 = rotated BB6 copula (270 degrees) 39 = rotated BB7 copula (270 degrees) 40 = rotated BB8 copula (270 degrees)
par
A d*(d-1)/2 vector of pair-copula parameters (optional; default: par = rep(0,length(family)).
par2
A d*(d-1)/2 vector of second parameters for pair-copula families with two parameters (optional; default: par2 = rep(0,length(family)).
names
A vector of names for the d variables. If names = NULL (default), column names of data (if available) or simply numbers are used.
type
Type of the vine model: 1 or "CVine" = C-vine 2 or "DVine" = D-vine
method
Character indicating the estimation method: either maximum likelihood estimation (method = "mle"; default) or inversion of Kendall's tau (method = "itau").
max.df
Numeric; upper bound for the estimation of the degrees of freedom parameter of the t-copula (default: max.df = 30; for more details see BiCopEst).
max.BB
List; upper bounds for the estimation of the two parameters (in absolute values) of the BB1, BB6, BB7 and BB8 copulas (default: max.BB = list(BB1=c(5,6),BB6=c(6,6),BB7=c(5,6),BB8=c(6,1))).
tree
Number of the tree to be plotted or tree = "ALL" (default) to plot all trees.
edge.labels
Vector of edge labels. Possible choices: FALSE: no edge labels "family": pair-copula families (default) "par": pair-copula parameters "par2": second pair-copula parameters "theotau": theoretical Kendall's tau values corresponding to pair-copula families and parameters (see BiCopPar2Tau) "emptau": empirical Kendall's tau values (only if data is provided!)
P
A list of matrices with two columns for the x-y-coordinates of the nodes in the plot(s) (optional; default: P = NULL).
...
further graphical parameters

References

Aas, K., C. Czado, A. Frigessi, and H. Bakken (2009). Pair-copula constructions of multiple dependence. Insurance: Mathematics and Economics 44 (2), 182-198.

See Also

CDVineMLE

Examples

Run this code
# simulate from a 6-dimensional C-vine model with Gaussian pair-copulas
d = 6
dd = d*(d-1)/2
par1 = c(0.2,0.69,0.73,0.22,-0.09,0.51,0.32,0.01,0.82,0.01,-0.2,
         -0.32,-0.19,-0.17,-0.06);
fam1 = rep(1,dd)
N = 100
U = CDVineSim(N,fam1,par1,type=1)

# plot the first tree with pair-copula families and
# empirical Kendall's tau values as edge labels
CDVineTreePlot(U,fam1,type=1,tree=1,edge.labels=c("family","emptau"))

# plot all trees without edge labels and without sequential estimation
CDVineTreePlot(data=NULL,family=fam1,par=par1,type=1, edge.labels=FALSE)

Run the code above in your browser using DataLab