2017-02-07 2 views
0

J'ai construit un arbre de décision en utilisant ctree dans R et visualise l'arbre en utilisant le modèle ctree dans le paquet party. Je suis très content des résultats et de la visualisation globale. Cependant, je ne peux pas interpréter la 'confusion' dans chaque noeud feuille, puisque les étiquettes de l'axe des x se chevauchent ou sont manquantes!Rotation de l'axe des x de l'intrigue de l'arbre de Partykit

Actuellement, j'utiliser la commande suivante:

plot(fitCtree, main="Title", gp = gpar(fontsize = 2)) 

J'ai cherché beaucoup pour trouver le (simple?) Réponse ... en vain. Pouvez-vous m'aider?

Cheers, Arend

x axis labels in visualization of R decision tree (ctree) using partykit package overlap and ideally should be perpendicual to the x-axis

+0

Avez-vous vu cet article [http://stackoverflow.com/a/12000533/4752675] Il a une solution compliquée, mais je pense qu'il répond à votre question – G5W

Répondre

0

Une option qui est facilement disponible dans node_barplot(), la fonction de panneau utilisé ici, est de faire tourner les étiquettes d'axe plutôt que tourner l'ensemble de la parcelle (comme le suggère https://stackoverflow.com/a/12000533/4752675 mentionné par @ G5W). Par exemple, vous pouvez définir rot = 45, just = c("right", "top") pour obtenir une rotation de 45 degrés avec une justification en haut à droite des étiquettes.

En fonction de la longueur des étiquettes, il peut être nécessaire d'augmenter la marge inférieure de l'intrigue pour laisser suffisamment d'espace. On peut le faire soit en poussant une fenêtre séparée - ou via l'argument de commodité margins que je viens d'ajouter à la version de développement de partykit sur R-Forge.

A titre d'illustration:

install.packages("partykit", repos = "http://R-Forge.R-project.org") 
library("partykit") 
ct <- ctree(Species ~ ., data = iris) 
plot(ct, margins = c(3, 0, 0, 0), 
    tp_args = list(rot = 45, just = c("right", "top"))) 

ctree with rotated labels