Options de présentation des boxplots

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Tai PHAM
Messages : 47
Enregistré le : 18 Jan 2011, 11:58

Options de présentation des boxplots

Messagepar Tai PHAM » 19 Avr 2015, 14:32

Bonjour,
j'ai un graphique avec 6 boxplots que je voudrais regrouper par 2 (élargir la distance entre le boxplots 2 et 3 ainsi qu'entre les boxplots 4 et 6). Y a-t-il une mmanière simple de procéder?

Par ailleurs, je voudrais légender l'axe des abscisse comme bon me semble (et donc effacer les légendes automatiques avec les petits "traits" qui sont les points de repère. J'arrive à me débarrasser du libellé en utilisant l'option names=c("",""...) et axis(1, at = xx, labels = format("xx")) mais il reste les traits de repère initiaux. Pourriez-vous m'aider?

Avec mes remerciements,

Tài Pham

Nicolas Péru
Messages : 1408
Enregistré le : 07 Aoû 2006, 08:13

Messagepar Nicolas Péru » 20 Avr 2015, 06:53

Bonjour,

Pour le positionnement des boxplots "à la carte", il faut utiliser l'argument at. De base, si tu as 4 boxplots la fonction va les positionner à x = 1,2,3 et 4 (ou quelque chose comme ça...). Donc si tu veux les regrouper, tu peux faire :

Code : Tout sélectionner

boxplot(...,at=c(1,1.5,3.5,4))

Il faut souvent jouer avec la largeur des box pour que ça ne se chevauche pas.

Pour l'axe des abscisses, il faut en fait d'abord créer un graphique "vide" et y ajouter les boxplots où on veut:

Code : Tout sélectionner

plot(x,xlim=c(0,5),ylim=c(0,1),type="n",xaxt="n")
axis(1,...)#config l'axe comme tu veux
boxplot(...,at=c(1,1.5,3.5,4), add=T)



Nicolas

Tai PHAM
Messages : 47
Enregistré le : 18 Jan 2011, 11:58

Messagepar Tai PHAM » 20 Avr 2015, 15:26

Merci de votre réponse, l'option at=c(...) fonctionne très bien; cependant, utilisant la fonction boxplot2 qui me met l'effectif au dessus des boxplots, les chiffres s'en retrouvent décalés! Avez-vous une solution à me proposer?

Par ailleurs, ma question peut paraitre naive, mais lorsque j'essaye de créer le graphique "vide" avec le code que vous m'avez proposé, le message d'erreur "unexpected string constant in "plot(..."

Faut-il remplacer les "x" par des valeurs même pour la conception de ce graphique vide?

Merci encore!

Tài

Nicolas Péru
Messages : 1408
Enregistré le : 07 Aoû 2006, 08:13

Messagepar Nicolas Péru » 21 Avr 2015, 06:47

oui car c'est pas qu'il est vide, c'est qu'on dit de ne pas faire apparaitre les points...la nuance est subtile :)

tu peux faire :

Code : Tout sélectionner

plot(1,xlim=c(0,5),ylim=c(0,1),type="n",xaxt="n")

C'est surtout mettre les bons ranges de valeurs pour les axes qui compte afin de ne pas ajouter des boxplots en dehors du graphique ou au contraire d'ajouter d'avoir des échelles d'axe disproportionnées où tes boxplot apparaitront tout petits.

Nicolas


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité