Afficher une légende après un layout

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

Nicolas Halter
Messages : 23
Enregistré le : 25 Juin 2021, 08:30

Afficher une légende après un layout

Messagepar Nicolas Halter » 26 Juil 2021, 15:13

Bonjour,

Afin d'illustrer l'allure de mes données pour décider de leur normalité ou non je voudrais afficher le graphique de la densité empirique et théorique ainsi que le boxplot associé. Seulement j'ai un souci d'affichage de mes légendes lorsque je réalise un layout : au lieu de s'afficher proprement je n'ai qu'un carré blanc qui s'affiche.

Voici mon code

Code : Tout sélectionner

data <- data.frame("Obs" = 1:10, "Val" = c(877,984,847,869,827,847,831,832,841,884))
layout(1:2,2,1)
boxplot(data$Val)
points(mean(data$Val), pch = 4, col = "red")
legend("topleft", pch = 4, col = "red", legend = "mean")

plot(density(data$Val), main = "", xlab="", ylab="")
curve(dnorm(x,mean(data$Val),sd(data$Val)), col = "blue", add = TRUE)
legend("topleft", pch = 16, col = c("black","blue"), legend = c("empirical density","theorical density"))


Auriez-vous une idée pour pouvoir afficher mes légendes ? Sans elles les graphiques ne sont pas très parlant...

Merci pour votre aide,

Nicolas

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Afficher une légende après un layout

Messagepar Mickael Canouil » 26 Juil 2021, 16:41

Bonjour,

je n'ai aucun problème avec le code fourni.
Cela dit, layout est conçu pour des arrangement complexes, un par(mfrow = c(2, 1)) ferait aussi le travail.
J'aurai tendance aussi à aligner les graphiques horizontalement plutôt que verticalement.

Conclusion, vous avez quelques choses qui fait "interférence" dans votre session.

Code : Tout sélectionner

data <- data.frame("Obs" = 1:10, "Val" = c(877,984,847,869,827,847,831,832,841,884))
layout(1:2,2,1) # par(mfrow = c(2, 1))
boxplot(data$Val)
points(mean(data$Val), pch = 4, col = "red")
legend("topleft", pch = 4, col = "red", legend = "mean")

plot(density(data$Val), main = "", xlab="", ylab="")
curve(dnorm(x,mean(data$Val),sd(data$Val)), col = "blue", add = TRUE)
legend("topleft", pch = 16, col = c("black","blue"), legend = c("empirical density","theorical density")) 

Image

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr

Nicolas Halter
Messages : 23
Enregistré le : 25 Juin 2021, 08:30

Re: Afficher une légende après un layout

Messagepar Nicolas Halter » 26 Juil 2021, 17:10

Étrange, voila à quoi ressemble mon graphique (je n'ai pas compris comment insérer une image...)

https://drive.google.com/file/d/1m0VVrq ... sp=sharing

J'aurai tendance aussi à aligner les graphiques horizontalement plutôt que verticalement.

Personnellement je préfère les avoir les uns sur les autres, après ça ne change pas grand-chose.

Conclusion, vous avez quelques choses qui fait "interférence" dans votre session.

Je me demande d'où elle pourrait venir, étant donné que je l'ai aussi quand j'ouvre une nouvelle session RStudio. Il faudrait changer quelque chose dans les options de RStudio directement ?

Merci pour votre réponse en tout cas,
Nicolas.

Nicolas Halter
Messages : 23
Enregistré le : 25 Juin 2021, 08:30

Re: Afficher une légende après un layout

Messagepar Nicolas Halter » 26 Juil 2021, 17:17

Bon ben le problème s'est réglé de lui-même...

Merci quand même !


Retourner vers « Questions en cours »

Qui est en ligne

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