# Better decision tree graphics for rpart via party and partykit

[This article was first published on

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

**Super Nerdy Cool » R**, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

I’ve been using Graphviz to create better decision tree graphics “by hand” for `rpart`

objects created in `R`

(final tree). I stumbled on this post that shows how one could convert an `rpart`

object to a `party`

project via the `as.party`

function in `partykit`

to utilize the plot functions in `party`

. It looks quite nice.

I might have to do additional hacking as I like to display the node size and percentage of success in every node. For example, in `rpart`

, I do something like

## rpartObj created from rpart textRpartCustom <- { nclass <- (ncol(yval) - 1L)/2 group <- yval[, 1L] counts <- yval[, 1L + (1L:nclass)] if (!is.null(ylevel)) group <- ylevel[group] temp1 <- rpart:::formatg(counts, digits) if (nclass > 1) { ## temp1 <- apply(matrix(temp1, ncol = nclass), 1, paste, ## collapse = "/") temp1 <- matrix(as.numeric(temp1), ncol=nclass) ##temp1 <- paste("p=", round(temp1[, 2] / apply(temp1, 1, sum)*100, 1), "%", "; N=", apply(temp1, 1, sum), sep="") temp1 <- paste("", round(temp1[, 2] / apply(temp1, 1, sum)*100, 1), "%", "; ", apply(temp1, 1, sum), sep="") } if (use.n) { out <- paste(format(group, justify = "left"), "\n", temp1, sep = "") } else { out <- format(group, justify = "left") } return(out) } rpartObj$functions$text <- textRpartCustom plot(rpartObj) text(rpartObj)

to get these information to display for a classification fit.

To

**leave a comment**for the author, please follow the link and comment on their blog:**Super Nerdy Cool » R**.R-bloggers.com offers

**daily e-mail updates**about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.