Visualization Tools for Genealogical Data

Methods for searching through genealogical data and displaying the results. Plotting algorithms assist with data exploration and publication-quality image generation. Includes interactive genealogy visualization tools. Provides parsing and calculation methods for variables in descendant branches of interest. Uses the Grammar of Graphics.


Genealogists wish to study the parent-child relationship between groups of organisms. Visual representations of genealogical relationships allow scientists to more effectively understand the historical changes that caused novel and desirable traits to arise in lineages. For example, in crops, desirable modifications could include an increase in protein yield or an increase in disease resistance. However, there are also times when lineages of detrimental traits can be viewed, such as to determine the origin of hazardous traits in rapidly-evolving viruses.

While there are visual methods available for genealogical data structures, there is a need for additional development of tools that are more customized to particular needs that arise when scientists want to make informed decisions while visualizing their data.


This package provides methods for searching through genealogical data and displaying the results. The available plotting algorithms can assist users in performing data exploration, as well as in generating publication-quality images. This package uses the Grammar of Graphics.

Some of the currently-available methods include:

  • Drawing genealogy trees from database of known lineage.
  • Selecting generation number of ancestors and descendants to show around a given variety.
  • Showing shortest path between two given varieties, and superimpose over full lineage structure.
  • Obtaining graph theory measures of the full lineage structure.
  • Producing color matrix plots of variables between a subset of varieties.
  • Interactively visualizing genealogical structure
  • Perform basic parsing and calculations on descendant branches of interest


  • The latest released version: install.packages("ggenealogy")
  • The latest development version: install_github("lrutter/ggenealogy")


Installation of the package will automatically download a vignette, which contains a more thorough explanation of the available methods, and example code.




ggenealogy 0.3.0

New features:

  • Ability to select any quantitative variable column of interest
  • Ability to select two quantitative variables for plotPath() and plotPathOnAll()
  • Addition of getBranchQuant() for parsing and calculations on quantitaive variables in descendant branches
  • Addition of getBranchQual() for parsing and calculations on qualitative variables in descendant branches

ggenealogy 0.2.0

New features:

  • Additional example dataset tested and added (academic statistician genealogy dataset)
  • Function plotPathOnAll() has option of animation and interactivity
  • Function plotPathOnAll() has additional options for font size and colors

Improved features:

  • Function plotPath() uses geom_label and geom_segment (instead of geom_rect) to reduce text boxes from overlapping with text labels

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.0.1 by Lindsay Rutter, a year ago

Browse source code at

Authors: Lindsay Rutter , Susan Vanderplas , Di Cook

Documentation:   PDF Manual  

GPL license

Imports ggplot2, igraph, plyr, reshape2, plotly, tibble

Suggests stringr, knitr, roxygen2, dplyr

See at CRAN