- xl <- c(min(unlist(lapply(TREES, function(x) min(x[, 1])))), 0)
- yl <- c(1, max(unlist(lapply(TREES, function(x) max(x[, 2])))))
+ range.each.tree <- sapply(TREES, function(x) range(x[, 1]))
+ xl <- range(range.each.tree)
+ yl <- c(1, max(sapply(TREES, function(x) max(x[, 2]))))
+
+ ## if backward is FALSE, we have to rescale the time scales of each tree:
+ if (!backward) {
+ for (i in seq_along(TREES)) {
+ tmp <- TREES[[i]]
+ tmp[, 1] <- tmp[, 1] + xl[2] - range.each.tree[2, i]
+ TREES[[i]] <- tmp
+ }
+ }