valeur des étiquettes de graduation

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

herve chapuis
Messages : 110
Enregistré le : 05 Déc 2008, 15:26

valeur des étiquettes de graduation

Messagepar herve chapuis » 03 Aoû 2021, 14:33

Bonjour

C'est la suite de mon geom_bar()...
Pour situer je veux tracer un barplot avec le nombre de descendants des pères et des mères.
Ce nombre a été obtenu via un table et me semble être sans conteste numérique.

Grâce aux conseils sur ma précédente question j'ai le graphe désiré (les colonnes dans le bon ordre) mais l'échelle pour les fréquences ne me parait pas opportun : alors que le nombre de produits par mère varie de 1 à 9, j'ai des étiquettes pour 0, 2.5,5.0 et 7.5.

Code : Tout sélectionner

ggplot(data = listmer,aes(x=reorder(Var1, Freq), y=Freq))+
  geom_col() +
  coord_flip() +
  theme(axis.text.x = element_text(vjust=1,hjust=1))+
  scale_x_discrete(breaks=seq(0,10,2))+
  labs(title="Nombre de descendants mulards par femelle Pekin",
       x ="Femelle Pékin", y = "Fréquence")

Ne me change rien.
et si j'essaie scale_x_continuous le message d'erreur est
Erreur : Discrete value supplied to continuous scale


Dernier essai : vu qu'il y a un coord_flip() je m'embrouille un peu pour savoir s'il faut jouer sur l'axe des x ou des y.
J'ai refait sans le coord_flip() avec l'instruction

Code : Tout sélectionner

  scale_y_discrete(breaks=seq(0,10,2))+
et là je fais disparaître les étiquettes sur l'axe y (celui où je voudrais voir des étiquettes espacées de 2 unités de 0 à 10).

Je pense que cela doit être enfantin mais je donne ma langue au chat.
Merci
Ingénieur de recherche INRAE Toulouse

Stéphane Laurent
Messages : 1557
Enregistré le : 05 Déc 2006, 19:07

Re: valeur des étiquettes de graduation

Messagepar Stéphane Laurent » 04 Aoû 2021, 10:05

Bonjour,

je n'ai pas essayé, mais j'essayerais ça:

Code : Tout sélectionner

scale_y_discrete(breaks = seq(0,10,2), labels = as.character(seq(0,10,2)))

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

Re: valeur des étiquettes de graduation

Messagepar Mickael Canouil » 04 Aoû 2021, 12:04

Bonjour,

pourquoi se torturer avec des coord_flip au lieu d'écrire directement dans le sens souhaité ?
Avec un exemple reproductible au passage ...

Code : Tout sélectionner

library(ggplot2)
set.seed(20210804)
df <- as.data.frame(table(rpois(1005)))
ggplot(data df) +
  
aes(Freqreorder(Var1Freq)) +
  
geom_col(orientation "y") +
  
scale_x_continuous(breaks seq(0102), expand expansion(c(00.05))) +
  
labs(
    
title "Nombre de descendants mulards par femelle Pekin"
    
"Fréquence",
    
"Femelle Pékin"
  

Image


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


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité