Browse code

supports phylo4d

git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/ggtree@117269 bc3139a8-67e5-0310-9ffc-ced21a209358

g.yu authored on 10/05/2016 09:16:30
Showing 5 changed files

... ...
@@ -1,7 +1,7 @@
1 1
 Package: ggtree
2 2
 Type: Package
3 3
 Title: a phylogenetic tree viewer for different types of tree annotations
4
-Version: 1.5.1
4
+Version: 1.5.2
5 5
 Author: Guangchuang Yu and Tommy Tsan-Yuk Lam
6 6
 Maintainer: Guangchuang Yu <guangchuangyu@gmail.com>
7 7
 Description: ggtree extends the ggplot2 plotting system which implemented the
... ...
@@ -16,6 +16,7 @@ S3method(fortify,phangorn)
16 16
 S3method(fortify,phylip)
17 17
 S3method(fortify,phylo)
18 18
 S3method(fortify,phylo4)
19
+S3method(fortify,phylo4d)
19 20
 S3method(fortify,phyloseq)
20 21
 S3method(fortify,r8s)
21 22
 S3method(fortify,raxml)
... ...
@@ -1,3 +1,8 @@
1
+CHANGES IN VERSION 1.5.2
2
+------------------------
3
+ o supports phylo4d object <2016-05-10, Tue>
4
+   + https://github.com/GuangchuangYu/ggtree/issues/47
5
+ 
1 6
 CHANGES IN VERSION 1.5.1
2 7
 ------------------------
3 8
  o update vignettes <2016-05-10, Tue>
... ...
@@ -44,15 +44,17 @@ gheatmap <- function(p, data, offset=0, width=1, low="green", high="red", color=
44 44
     start <- max(df$x) + offset
45 45
     
46 46
     dd <- data
47
-    dd$lab <- rownames(dd)
48
-    dd <- dd[df$label[order(df$y)],]
47
+    ## dd$lab <- rownames(dd)
48
+    lab <- df$label[order(df$y)]
49
+    dd <- dd[lab, ]
49 50
     dd$y <- sort(df$y)
50
-    
51
+    dd$lab <- lab
51 52
     ## dd <- melt(dd, id=c("lab", "y"))
52 53
     dd <- gather(dd, variable, value, -c(lab, y))
53
-    
54
-    if (any(dd$value == "")) {
55
-        dd$value[dd$value == ""] <- NA
54
+
55
+    i <- which(dd$value == "")
56
+    if (length(i) > 0) {
57
+        dd$value[i] <- NA
56 58
     }
57 59
     if (is.null(colnames_level)) {
58 60
         dd$variable <- factor(dd$variable, levels=colnames(data))
... ...
@@ -87,7 +89,7 @@ gheatmap <- function(p, data, offset=0, width=1, low="green", high="red", color=
87 89
     }
88 90
     
89 91
     p2 <- p2 + theme(legend.position="right", legend.title=element_blank())
90
-    p2 <- p2 + guides(fill = guide_legend(override.aes = list(colour = NULL)))
92
+    ## p2 <- p2 + guides(fill = guide_legend(override.aes = list(colour = NULL)))
91 93
     
92 94
     attr(p2, "mapping") <- mapping
93 95
     return(p2)
... ...
@@ -412,6 +412,15 @@ fortify.phylo4 <- function(model, data, layout="rectangular", yscale="none",
412 412
     scaleY(phylo, df, yscale, layout, ...)
413 413
 }
414 414
 
415
+##' @method fortify phylo4d
416
+##' @export
417
+fortify.phylo4d <- function(model, data, layout="rectangular", yscale="none",
418
+                            ladderize=TRUE, right=FALSE, mrsd=NULL, ...) {
419
+    res <- fortify.phylo4(model, data, layout, yscale, ladderize, right, mrsd, ...)
420
+    tdata <- model@data[match(res$node, rownames(model@data)), , drop=FALSE]
421
+    cbind(res, tdata)
422
+}
423
+
415 424
 as.phylo.phylo4 <- function(phylo4) {
416 425
     edge <- phylo4@edge
417 426
     edge <- edge[edge[,1] != 0, ]