-
Notifications
You must be signed in to change notification settings - Fork 29
ggenealogy
dicook edited this page Feb 20, 2015
·
21 revisions
Summary:
Re-factor the phyViz package into a new package called ggenealogy, which provides additional methods to visualize the ancestors and descendants of a given line or variety.
Description:
- Draw interactive genealogy trees from database of known lineage.
- Select generation number of ancestors and descendants to show around a given variety.
- Show shortest path between two given varieties, and superimpose over full lineage structure.
- Organize nodes horizontally by time of emergence, and vertically by a given additional variable.
- Obtain graph theory measures of the full lineage structure.
- Produce color matrix plots of variables between a subset of varieties.
- Ensure plotting tools can be used for both exploratory data analysis and publication purposes.
> library(devtools)
> install_github("phyViz", "dicook")Related work:
Potential tasks:
- Incorporate Shiny to allow users to examine genealogy visualization tools in a more interactive way
- Test the package on multiple toy datasets
- Soybean parent-child relationships
- Barley parent-child relationships
- Mathematics Genealogy Project (http://genealogy.math.ndsu.nodak.edu/)
- Enhance the flexibility of potential data input types
- Currently-required input format is a data frame of parent-child relationships
- Possible input types include Purdy Notation System
Skills required:
Knowledge of genealogical data structures, igraph, ggplot2, shiny, and devtools.
Test:
Write R code that reads in this data, and can calculate the number of steps, could be forward to descendants or backwards to ancestors, to get from one line/variety to another. Test it out by reporting the number of steps between Clark and Calland.
Mentor:
Di Cook ([@](mailto:visnut {at} gmail {dot} com)) and Susan Vanderplas ([@](mailto:srvanderplas {at} gmail {dot} com)) as backup mentor
Reference:
- A student paper competition piece written about the phyViz package.