Hi David,

Have you tried ggtree? It is very powerful, as it interfaces nicely with the 
ggplot2 package functions.

I tried to sketch an example, see this link or below signature.

https://gist.github.com/kopperud/ae8cca0c29927d1d51fe08fd74cdb90a

There are probably better ways of doing this, but it should work. Need a few 
packages, though?

Cheers,
Bj�rn Tore Kopperud




```
library(ape)
library(ggtree) ## Ggtree is on github, 
devtools::install_github("GuangchuangYu/ggtree")
library(ggplot2)
library(gridExtra)

## Random tree
set.seed(5)
phy <- rtree(15)

## No transformation
p1 <- ggtree(phy, ladderize = TRUE) + theme_tree2() + geom_tiplab() + 
ggtitle("No transform")

## Manipulate the plotting coordinates, square transform
p2 <- ggtree(phy, ladderize = TRUE) +
  theme_tree2() +
  geom_tiplab() + scale_x_continuous(labels = function(x) sqrt(x), breaks = 
seq(0, 4)^2) +  ## Backtransform the axis labels, and add appropriate breaks
  ggtitle("Square transform")
p2$data$x <- p2$data$x ^2

## Exponential instead
p3 <- ggtree(phy, ladderize = TRUE) +
  theme_tree2() +
  geom_tiplab() +
  scale_x_continuous(labels = function(x) log(x), breaks = exp(seq(0, 4))) +
  ggtitle("Exponential transform")
p3$data$x <- exp(p3$data$x)

grid.arrange(p1, p2, p3)
```













________________________________________
From: R-sig-phylo <r-sig-phylo-boun...@r-project.org> on behalf of David Bapst 
<dwba...@tamu.edu>
Sent: 02 January 2019 21:15
To: R Sig Phylo Listserv
Subject: [R-sig-phylo] Logarithmic Scales for Plotting Dated Phyogenies (e.g. 
Log of Time Axis?)

Hi all,

I've been dealing with a tree with one very deep divergence and many
very shallow divergences recently, and I was curious if there was an R
plotting capability that allows for the depth axis of the tree to be
non-linear or logarithmic - helpful if there can be a time axis bar as
well, as with axisPhylo(). Logging the axis directly with par seems to
break plot.phylo, presumably because its trying to plot something at a
negative coordinate.

It seems like a simple thing, but oddly I haven't come upon anything
yet that can do this. Any thoughts?

Cheers,
-Dave

PS: Tangential to that, is there a ladderize function that also takes
into account the edge length on non-ultrametric trees? I just noticed
that ladderize doesn't do much for a tree with a large polytomy
consisting of branches of very different length.

PPS: Happy New Years, all! I just checked and its now been nine years
I've been following this listserv...

--
David W. Bapst, PhD
Asst Research Professor, Geology & Geophysics, Texas A & M University
Postdoc, Ecology & Evolutionary Biology, Univ of Tenn Knoxville
https://github.com/dwbapst/paleotree

_______________________________________________
R-sig-phylo mailing list - R-sig-phylo@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Searchable archive at http://www.mail-archive.com/r-sig-phylo@r-project.org/

        [[alternative HTML version deleted]]

_______________________________________________
R-sig-phylo mailing list - R-sig-phylo@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-phylo
Searchable archive at http://www.mail-archive.com/r-sig-phylo@r-project.org/

Reply via email to