| Title | Tree and data plotting in the phylobase project |
|---|---|
| Student | Peter Cowan |
| Mentor | Benjamin Michael Bolker |
| Abstract | |
|
This proposal stems from a desire to link R's excellent data and tree plotting abilities. A personal example plotting the evolution of a trait with distributed circularly. The R package circular contains nice functions for plotting circular data as a rose diagrams, and the ape and phylobase packages contain functions for plotting phylogenetic trees. However, without significant low level work, plotting rose diagrams at the tips, or internal nodes isn't possible. An interface that allow users to 'nest' plot on phylogenies would remove a major obstacle for those trying to produce phylogenetic tree figures suitable for publication.
A key paradigm of the grid system is the viewpoint, a plotting region that is nested within another plotting region. This concept is useful for the case of plotting tree with associated tip or internal node data. A possible approach would be to generate viewpoints at each of the tree tips, which then could be filled with various plot types such as histograms, sideways boxplots, or bivariate scatterplots. Likewise, each node can have a associated viewpoint to display corresponding data. 1. For phylo4 objects, replace base graphics calls with grid graphics calls, 2-3 weeks. 2. For the plotting of phylo4d projects, add viewpoints for node and tip data, 1-2 weeks. 3. Transition back end calls to ape to phylobase specific code, allowing for more flexible handling of node (internal and tip) data, 1-3 weeks. 4. Rewrite as necessary C code to optimize plot calculations, 2-3 weeks. 5. In addition to writing or updating the R help files for the function described above, I will create tutorials for end users, 1-2 weeks. 6. Time permitting write functions to zoom and collapse clades, 1-2 weeks. I have been programming in R since fall of 2003. In that time I have used R extensively for both phylogenetic computation and comparative methods in ecology and contributed plotting commands to the picante package, a comparative biology R package. I participated in the NESCent Hackathon on Comparative Methods in R where I took part in design discussions for the phylobase data objects. Since the hackathon I have been active on the phylobase mailing list and made contributions to phylobase documentation, source clarity and version control. This is a good opportunity for me, if selected, to become more familiar with the grid graphics systems and mentorship on the use and programming of C code in phylogenetic applications. |
|