Plot BinaryTree {party} | R Documentation

## Visualization of Binary Regression Trees

### Description

`plot` method for `BinaryTree` objects with extended facilities for plugging in panel functions.

### Usage

    ## S3 method for class 'BinaryTree':
    plot(x, main = NULL, type = c("extended", "simple"),
         terminal_panel = NULL, tp_args = list(),
         inner_panel = node_inner, ip_args = list(),
         edge_panel = edge_simple, ep_args = list(),
         drop_terminal = (type[1] == "extended"),
         tnex = (type[1] == "extended") + 1, newpage = TRUE,
         pop = TRUE, ...)

### Arguments

`x` | an object of class `BinaryTree`.
`main` | an optional title for the plot.
`type` | a character specifying the complexity of the plot: `extended` tries to visualize the distribution of the response variable in each terminal node whereas `simple` only gives some summary information.
`terminal_panel` | an optional panel function of the form `function(node)` plotting the terminal nodes. Alternatively, a panel generating function of class `"grapcon_generator"` that is called with arguments `x` and `tp_args` to set up a panel function. By default, an appropriate panel function is chosen depending on the scale of the dependent variable.
`tp_args` | a list of arguments passed to `terminal_panel` if this is a `"grapcon_generator"` object.
`inner_panel` | an optional panel function of the form `function(node)` plotting the inner nodes. Alternatively, a panel generating function of class `"grapcon_generator"` that is called with arguments `x` and `ip_args` to set up a panel function.
`ip_args` | a list of arguments passed to `inner_panel` if this is a `"grapcon_generator"` object.
`edge_panel` | an optional panel function of the form `function(split, ordered = FALSE, left = TRUE)` plotting the edges. Alternatively, a panel generating function of class `"grapcon_generator"` that is called with arguments `x` and `ip_args` to set up a panel function.
`ep_args` | a list of arguments passed to `edge_panel` if this is a `"grapcon_generator"` object.
`drop_terminal` | a logical indicating whether all terminal nodes should be plotted at the bottom.
`tnex` | a numeric value giving the terminal node extension in relation to the inner nodes.
`newpage` | a logical indicating whether `grid.newpage()` should be called.
`pop` | a logical whether the viewport tree should be popped before return.
`...` | additional arguments passed to callies.

### Details

This `plot` method for `BinaryTree` objects provides an extensible framework for the visualization of binary regression trees. The user is allowed to specify panel functions for plotting terminal and inner nodes as well as the corresponding edges. Panel functions for plotting inner nodes, edges and terminal nodes are available for the most important cases and can serve as the basis for user-supplied extensions, see `node_inner` and `vignette("party")`.

More details on the ideas and concepts of panel-generating functions and `"grapcon_generator"` objects in general can be found in Meyer, Zeileis and Hornik (2005).

### References

Meyer, D., Zeileis, A., and Hornik, K. (2005) The strucplot framework: Visualizing multi-way contingency tables with vcd. Report 22, Department of Statistics and Mathematics, Wirtschaftsuniversität Wien, Research Report Series. http://epub.wu-wien.ac.at/dyn/openURL?id=oai:epub.wu-wien.ac.at:epub-wu-01_8a1

### See Also

`node_inner`, `node_terminal`, `edge_simple`, `node_surv`, `node_barplot`, `node_boxplot`, `node_hist`, `node_density`

### Examples

      airq <- subset(airquality, !is.na(Ozone))
      airct <- ctree(Ozone ~ ., data = airq)

      ### regression: boxplots in each node
      plot(airct, terminal_panel = node_boxplot, drop_terminal = TRUE)

      if(require("ipred")) {
      ## classification: barplots in each node
      data("GlaucomaM", package = "ipred")
      glauct <- ctree(Class ~ ., data = GlaucomaM)
      plot(glauct)
      plot(glauct, inner_panel = node_barplot,
        edge_panel = function(ctreeobj, ...) { function(...) invisible() },
        tnex = 1)

      ## survival: Kaplan-Meier curves in each node
      data("GBSG2", package = "ipred")
      gbsg2ct <- ctree(Surv(time, cens) ~ ., data = GBSG2)
      plot(gbsg2ct)
      plot(gbsg2ct, type = "simple")
      }

[Package party version 0.8-6 Index]