Nothing
test_that("MatchNodes() works", {
bal8 <- BalancedTree(8)
bal16 <- BalancedTree(16)
if (interactive()) {
oPar <- par(mfrow = c(2, 1), mar = rep(1, 4), xpd = NA)
on.exit(par(oPar))
plot(bal8)
edgelabels()
nodelabels()
par(cex = 0.75)
plot(bal16)
edgelabels()
nodelabels()
}
expect_equal(MatchEdges(bal8, bal16), 2:15)
e16 <- bal16[["edge"]]
expect_equal(.Edge(bal8$edge), bal8[["edge"]])
l16 <- structure(list(e16[, 1], e16[, 2]), tip.label = TipLabels(bal16))
expect_equal(.Edge(l16), e16)
expect_equal(MatchEdges(l16, bal8), c(NA, 1:14, rep(NA, 15)))
expect_equal(MatchEdges(bal16$edge, bal8$edge), c(NA, 1:14, rep(NA, 15)))
expect_equal(MatchNodes(bal8, bal16, tips = FALSE), 18:24)
expect_equal(MatchNodes(bal8, bal16, tips = TRUE), c(1:8, 18:24))
expect_equal(MatchNodes(BalancedTree(16), bal8, tips = TRUE, nomatch = -1),
c(1:8, rep(-1, 8), -1, 9:15, rep(-1, 7)))
bal8rn <- bal8
bal8rn[["tip.label"]][7:8] <- letters[7:8]
expect_equal(MatchNodes(bal8rn, bal8, tips = TRUE),
c(1:6, rep(NA, 2), NA, 10:12, NA, 14, NA))
table <- RootTree(bal8, 1)
if (interactive()) {
par(cex = 0.9)
plot(bal8)
edgelabels()
nodelabels()
plot(table)
edgelabels()
nodelabels()
}
expect_equal(MatchNodes(bal8, table),
c(9, rep(NA_integer_, 2), 12:15))
expect_equal(MatchNodes(bal8, table, nomatch = -1),
c(9, rep(-1, 2), 12:15))
if (interactive()) {
plot(bal8)
edgelabels()
nodelabels()
plot(Postorder(bal8))
edgelabels()
nodelabels()
}
expect_equal(MatchNodes(bal8, Postorder(bal8)),
c(9:15))
})
test_that(".UpdateNodeLabel() works", {
.Node <- function(n) paste("Node", n)
bal4 <- BalancedTree(4)
bal4[["node.label"]] <- .Node(5:7)
bal8 <- BalancedTree(8)
bal8[["node.label"]] <- .Node(9:15)
expect_equal(.UpdateNodeLabel(bal4, bal8), .Node(10:12))
expect_equal(.UpdateNodeLabel(bal8, bal4), c(NA, .Node(5:7), rep(NA, 3)))
expect_equal(.UpdateNodeLabel(bal4$edge, bal8, newTips = TipLabels(4)),
.Node(10:12))
expect_equal(.UpdateNodeLabel(bal8$edge, bal4, newTips = TipLabels(8)),
c(NA, .Node(5:7), rep(NA, 3)))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.