## ----initialize, echo=FALSE, message=FALSE------------------------------------ library("Ternary") library("CongreveLamsdell2016") data('clBremPartitions', 'clBremQuartets', 'clMkvPartitions', 'clMkvQuartets', 'clBootFreqPartitions', 'clBootFreqQuartets', 'clBootGcPartitions', 'clBootGcQuartets', 'clJackFreqPartitions', 'clJackFreqQuartets', 'clJackGcPartitions', 'clJackGcQuartets', 'clCI') ## ----initialize-variables, echo=FALSE----------------------------------------- PCH_MK <- 1 # circle PCH_EQ <- 61 #'=' PCH_XX <- 18 # 183 #'.' is invalid in some locales PCH_IW <- 2 #triup PCH_IC <- 17 #triupfilled TREE <- 2 COL <- c( 'mk' = paste0(cbPalette8[4], '99'), 'eq' = paste0(cbPalette8[8], '99'), 'k1' = paste0(cbPalette8[6], '42'), 'k2' = paste0(cbPalette8[6], '42'), 'k3' = paste0(cbPalette8[6], '42'), 'k5' = paste0(cbPalette8[6], '42'), 'kX' = paste0(cbPalette8[6], '99'), 'kC' = paste0(cbPalette8[2], '99')) PCH <- c( brem = 2, bootG = 0, bootF = 5, jackG = 3, jackF = 4, mk = 1 ) MARGINS <- c(2.8, 0.3, 0.3, 0.3) ROWS <- c(2, 3) TernaryQuarts <- function(TREE=TREE, an='eq', zoom=1, padding=0.1) { clInitializeTernaryQuarts(zoom=zoom, padding=padding) clPlotQuartets(pch=PCH['brem'] , cex=2, clBremQuartets[an], TREE) clPlotQuartets(pch=PCH['bootF'], cex=2, clBootFreqQuartets[an], TREE) clPlotQuartets(pch=PCH['bootG'], cex=2, clBootGcQuartets[an], TREE) clPlotQuartets(pch=PCH['jackF'], cex=2, clJackFreqQuartets[an], TREE) clPlotQuartets(pch=PCH['jackG'], cex=2, clJackGcQuartets[an], TREE) clPlotQuartets(pch=PCH['mk'], clMkvQuartets, TREE, cex=2, col=COL['mk']) # Return: invisible() } TernaryAllQuarts <- function(an='eq', zoom=1, padding=0.1) { clInitializeTernaryQuarts(zoom=zoom, padding=padding) clPlotTheseAverageQuartets(pch=PCH['brem'] , cex=2, col=COL[an], clBremQuartets[[an]]) clPlotTheseAverageQuartets(pch=PCH['bootF'], cex=2, col=COL[an], clBootFreqQuartets[[an]]) clPlotTheseAverageQuartets(pch=PCH['bootG'], cex=2, col=COL[an], clBootGcQuartets[[an]]) clPlotTheseAverageQuartets(pch=PCH['jackF'], cex=2, col=COL[an], clJackFreqQuartets[[an]]) clPlotTheseAverageQuartets(pch=PCH['jackG'], cex=2, col=COL[an], clJackGcQuartets[[an]]) clPlotTheseAverageQuartets(pch=PCH['mk'], clMkvQuartets, cex=2, col=COL['mk']) # Return: invisible() } TernaryParts<-function(TREE=TREE, an='eq') { clInitializeTernarySplits() title(main="\nPartitions", cex.main=0.8) HorizontalGrid(19) clPlotSplits(pch=PCH['brem'] , cex=2, col=COL[an], clBremPartitions[[an]], TREE) clPlotSplits(pch=PCH['bootF'], cex=2, col=COL[an], clBootGcPartitions[[an]], TREE) clPlotSplits(pch=PCH['bootG'], cex=2, col=COL[an], clBootFreqPartitions[[an]], TREE) clPlotSplits(pch=PCH['jackF'], cex=2, col=COL[an], clJackGcPartitions[[an]], TREE) clPlotSplits(pch=PCH['jackG'], cex=2, col=COL[an], clJackFreqPartitions[[an]], TREE) clPlotSplits(pch=PCH['mk'], cex=2, clMkvPartitions, TREE, col=COL['mk']) # Return: invisible() } TernaryAllParts<-function(an='eq') { clInitializeTernarySplits() title(main="\nPartitions", cex.main=0.8) HorizontalGrid(19) clPlotTheseAverageSplits(pch=PCH['brem'] , col=COL[an], cex=2, clBremPartitions[[an]]) clPlotTheseAverageSplits(pch=PCH['bootF'], col=COL[an], cex=2, clBootGcPartitions[[an]]) clPlotTheseAverageSplits(pch=PCH['bootG'], col=COL[an], cex=2, clBootFreqPartitions[[an]]) clPlotTheseAverageSplits(pch=PCH['jackF'], col=COL[an], cex=2, clJackGcPartitions[[an]]) clPlotTheseAverageSplits(pch=PCH['jackG'], col=COL[an], cex=2, clJackFreqPartitions[[an]]) clPlotTheseAverageSplits(pch=PCH['mk'], cex=2, clMkvPartitions, col=COL['mk']) # Return: invisible() } AddLegend <- function(pos='bottomright', an='eq') { legend(pos, cex=0.8, bty='n', lty=1, pch=PCH[c('mk', 'brem', 'bootF', 'bootG', 'jackF', 'jackG')], pt.cex=1.2, col=c(COL['mk'], rep(COL[an], 5)), legend=c('Markov', 'Bremer', 'BootFreq', 'Boot GC', 'Jack Freq', 'Jack GC') ) } CompareNodeSupports <- function (i) { x <- Sys.setlocale("LC_ALL", "C") # allows PCH=183 TernaryQuarts(TREE=i, an='eq') title(main=paste0("\nQuartets"), cex.main=0.8) arrows(sqrt(3/4) * 0.5, 0.5, sqrt(3/4) * 0.8, 0.5, length=0.1) text (sqrt(3/4) * 0.65, 0.5, pos=3, 'Decreasing resolution', cex=0.8) arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing divergence', cex=0.8, srt=270) TernaryQuarts(TREE=i, an='eq', zoom=3, padding=0.01) title(main=paste0("\nDataset ", i, ": CI=",round(clCI[i], 2), ". Equal weights"), cex.main=1.2) TernaryParts(TREE=i, an='eq') arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing RF distance', cex=0.8, srt=270) AddLegend(an='eq') TernaryQuarts(TREE=i, an='k3') title(main=paste0("\nQuartets"), cex.main=0.8) arrows(sqrt(3/4) * 0.5, 0.5, sqrt(3/4) * 0.8, 0.5, length=0.1) text (sqrt(3/4) * 0.65, 0.5, pos=3, 'Decreasing resolution', cex=0.8) arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing divergence', cex=0.8, srt=270) TernaryQuarts(TREE=i, an='k3', zoom=3, padding=0.01) title(main="\nImplied weights (k = 3)", cex.main=1.2) TernaryParts(TREE=i, an='k3') arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing RF distance', cex=0.8, srt=270) AddLegend(an='k3') } ## ----Averages, echo=FALSE, fig.width=9, fig.height=6-------------------------- par(mfrow=c(2, ROWS[2]), mar=MARGINS) TernaryAllQuarts(an='eq') title(main=paste0("\nQuartets"), cex.main=0.8) arrows(sqrt(3/4) * 0.5, 0.5, sqrt(3/4) * 0.8, 0.5, length=0.1) text (sqrt(3/4) * 0.65, 0.5, pos=3, 'Decreasing resolution', cex=0.8) arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing divergence', cex=0.8, srt=270) TernaryAllQuarts(an='eq', zoom=3, padding=0.01) title(main="\nAll datasets (averaged). Equal weights.", cex.main=1.2) TernaryAllParts(an='eq') arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing RF distance', cex=0.8, srt=270) AddLegend(an='eq') TernaryAllQuarts(an='k3') title(main=paste0("\nQuartets"), cex.main=0.8) arrows(sqrt(3/4) * 0.5, 0.5, sqrt(3/4) * 0.8, 0.5, length=0.1) text (sqrt(3/4) * 0.65, 0.5, pos=3, 'Decreasing resolution', cex=0.8) arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing divergence', cex=0.8, srt=270) TernaryAllQuarts(an='k3', zoom=3, padding=0.01) title(main="\nImplied weights (k = 3)", cex.main=1.2) TernaryAllParts(an='k3') arrows(sqrt(3/4) * 0.98, 0.40, sqrt(3/4) * 0.98, 0.20, length=0.1) text (sqrt(3/4) * 1.01, 0.30, pos=3, 'Increasing RF distance', cex=0.8, srt=270) AddLegend(an='k3') ## ----compare-best, results='asis', echo=FALSE--------------------------------- if (requireNamespace('Quartet', quietly = TRUE)) { TreeBests <- function (dataset) vapply(dataset, function (item) apply(apply(item, 1, function (x) Quartet::QuartetDivergence(t(x))), 1, max), double(dim(dataset[[1]])[3])) treeBests <- vapply(list(clBootGcQuartets, clBootFreqQuartets, clJackGcQuartets, clJackFreqQuartets, clBremQuartets), TreeBests, matrix(0, nrow=dim(clBootGcQuartets[[1]])[3], ncol=length(clBootGcQuartets)) ) tests <- apply(treeBests, 2, function (slice) apply(slice, 2, function (column) t.test(column, slice[, 1])$p.value)) rownames(tests) <- c( 'Bootstrap GC', 'Bootstrap Freq', 'Jackknife GC', 'Jackknife Freq', 'Bremer') knitr::kable(tests) } else { message("Package 'Quartet' is not available; cannot display table.") } ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(1) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(2) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(3) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(4) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(5) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(6) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(7) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(8) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(9) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(10) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(11) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(12) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(13) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(14) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(15) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(16) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(17) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(18) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(19) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(20) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(21) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(22) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(23) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(24) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(25) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(26) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(27) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(28) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(29) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(30) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(31) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(32) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(33) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(34) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(35) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(36) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(37) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(38) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(39) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(40) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(41) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(42) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(43) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(44) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(45) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(46) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(47) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(48) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(49) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(50) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(51) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(52) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(53) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(54) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(55) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(56) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(57) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(58) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(59) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(60) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(61) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(62) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(63) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(64) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(65) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(66) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(67) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(68) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(69) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(70) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(71) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(72) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(73) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(74) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(75) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(76) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(77) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(78) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(79) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(80) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(81) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(82) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(83) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(84) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(85) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(86) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(87) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(88) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(89) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(90) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(91) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(92) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(93) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(94) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(95) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(96) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(97) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(98) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(99) ## ----echo=FALSE, fig.width=9, fig.height=6------------------------------------ par(mfrow=ROWS, mar=MARGINS); x <- CompareNodeSupports(100)