IBDtriangle: IBD triangle plot

View source: R/IBDtriangle.R

IBDtriangleR Documentation

IBD triangle plot


The IBD triangle is typically used to visualize the pairwise relatedness of non-inbred individuals. Various annotations are available, including points marking the most common relationships, contour lines for the kinship coefficients, and shading of the unattainable region.


  relationships = c("UN", "PO", "MZ", "S", "H,U,G", "FC"),
  kinshipLines = numeric(),
  shading = "lightgray",
  pch = 16,
  cex_points = 1.2,
  cex_text = 1.2,
  axes = FALSE,
  xlim = c(0, 1),
  ylim = c(0, 1),
  xlab = expression(kappa[0]),
  ylab = expression(kappa[2]),
  cex_lab = cex_text,
  mar = c(3.1, 3.1, 1, 1),
  xpd = TRUE,
  keep.par = TRUE



A character vector indicating relationships points to be included in the plot. See Details for a list of valid entries.


A numeric vector (see Details).


The shading colour for the unattainable region.


Symbol used for the relationship points (see par()).


A number controlling the symbol size for the relationship points.


A number controlling the font size for the relationship labels.


A logical: Draw surrounding axis box?

xlim, ylim, mar, xpd

Graphical parameters; see par().

xlab, ylab

Axis labels


A number controlling the font size for the axis labels.


A logical. If TRUE, the graphical parameters are not reset after plotting, which may be useful for adding additional annotation.


For any pair of non-inbred individuals A and B, their genetic relationship can be summarized by the IBD coefficients (\kappa_0, \kappa_1, \kappa_2), where \kappa_i = P(A and B share i alleles IBD at random autosomal locus). Since \kappa_0 + \kappa_1 + \kappa_2 = 1, any relationship corresponds to a point in the triangle in the (\kappa_0, \kappa_2)-plane defined by \kappa_0 \ge 0, \kappa_2 \ge 0, \kappa_0 + \kappa_2 \le 1. The choice of \kappa_0 and \kappa_2 as the axis variables is done for reasons of symmetry and is not significant (other authors have used different views of the triangle).

As shown by Thompson (1976), points in the subset of the triangle defined by 4\kappa_0\kappa_2 > \kappa_1^2 are unattainable for pairwise relationships. By default this region is shaded in light grey colour, but this can be modified with the shading argument.

The IBD coefficients are linearly related to the kinship coefficient \phi by the formula

\phi = 0.25\kappa_1 + 0.5\kappa_2.

By indicating values for \phi in the kinshipLines argument, the corresponding contour lines are shown as dashed lines in the triangle plot.

The following abbreviations are valid entries in the relationships argument:

  • UN = unrelated

  • PO = parent/offspring

  • MZ = monozygotic twins

  • S = full siblings

  • H,U,G = half sibling/avuncular (uncle)/grandparent

  • FC = first cousins

  • SC = second cousins

  • DFC = double first cousins

  • Q = quadruple first half cousins




Magnus Dehli Vigeland


  • E. A. Thompson (1975). The estimation of pairwise relationships. Annals of Human Genetics 39.

  • E. A. Thompson (1976). A restriction on the space of genetic relationships. Annals of Human Genetics 40.

See Also



opar = par(no.readonly = TRUE) # store graphical parameters

IBDtriangle(kinshipLines = c(0.25, 0.125), shading = NULL, cex_text = 0.8)

par(opar) # reset graphical parameters

forrel documentation built on Nov. 19, 2023, 5:14 p.m.