ggplot 2 : facet_wrap couleur titre ou boite

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

Jérémy Jachacz
Messages : 153
Enregistré le : 15 Avr 2014, 12:56

ggplot 2 : facet_wrap couleur titre ou boite

Messagepar Jérémy Jachacz » 15 Déc 2017, 09:46

Bonjour,

Je construis avec ggplot un graphique et avec la fonction facet wrap j'obtiens une sorte de matrice de graphiques, chaque graphique à une entête, une boite grise avec le titre associé.

Je voudrais changer la couleur soit du titre soit du fond de la boite, MAIS pas pour les graphiques seulement certains.
J'ai trouver la fonction

Code : Tout sélectionner

strip.text.x=element.text(color=ifelse(unique(don$AA)%in%var,"blue","black"))


mais en mettant une variable qui attribue telle ou telle couleur cela ne fonctionne pas, il prends la première couleur de mon vecteur et le mets pour tous les graphiques.

voici un exemple :

Code : Tout sélectionner

 # couleurs identiques
  ggplot(mtcars, aes(wt, mpg)) +
  geom_point() +
  facet_wrap(~ cyl) +
  theme(strip.text.x = element_text(size = 8, colour = "black")
 
  # couleurs encore identiques...
  ggplot(mtcars, aes(wt, mpg)) +
  geom_point() +
  facet_wrap(~ cyl) +
  theme(strip.text.x = element_text(size = 8, colour =   ifelse(unique(mtcars$cyl)<7,"blue","black")))
 
  # si on execute le ifelse tout seul on voit bien que pourtant ce qui en ressort c'est 2couleurs
 ifelse(unique(mtcars$cyl)<7,"blue","black")
 
 


Si quelqu'un aurait une astuce pour pouvoir mettre en évidence certains graph par rapport à d'autre...
Merci
Jérémy
Statisticien (69)

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

Re: ggplot 2 : facet_wrap couleur titre ou boite

Messagepar Mickael Canouil » 15 Déc 2017, 11:22

Bonjour,

ggplot2 n'est pas prévu pour faire ce que vous demandez.
La solution est une méthode patchwork: https://stackoverflow.com/questions/194 ... n-data-set

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

Jérémy Jachacz
Messages : 153
Enregistré le : 15 Avr 2014, 12:56

Re: ggplot 2 : facet_wrap couleur titre ou boite

Messagepar Jérémy Jachacz » 15 Déc 2017, 11:51

Bonjour,

Merci.. j'avais peur d'avoir ce genre de réponse !
dommage qu'on puisse pas le faire plus simplement..

Sans passer par le titre ou le fond de la boite mais par exemple par le fond du graphique ou la couleurs des graduation en y, il n'y a pas moyen de simplement distingué quelques graph ?

Bonne journée
Jérémy
Statisticien (69)

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

Re: ggplot 2 : facet_wrap couleur titre ou boite

Messagepar Mickael Canouil » 15 Déc 2017, 12:48

L'objectif du package ggplot2 est de simplifier la création de graphique et des légendes associés dans le but d'avoir quelque chose d'homogène à la fin.

Comme je le disais, votre seul et unique option est de faire de la "bidouille" et notamment ce qui est proposé dans le lien que j'ai fourni.
La stratégie de modification décrite reste la même et ce peu importe la partie du ggplot que vous voulez modifier (fond, titre, etc.)

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

Michaël Delorme
Messages : 67
Enregistré le : 04 Avr 2016, 10:21

Re: ggplot 2 : facet_wrap couleur titre ou boite

Messagepar Michaël Delorme » 15 Déc 2017, 14:55

Si on veut pas trop se prendre la tête on peut ajouter un geom_rect en fond ; voir
https://stackoverflow.com/questions/9847559/conditionally-change-panel-background-with-facet-grid

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

Re: ggplot 2 : facet_wrap couleur titre ou boite

Messagepar Mickael Canouil » 15 Déc 2017, 16:05

Pour aller plus loin et plus générale que la proposition de Michaël, il y a toutes les fonctions d'annotations ggplot2: http://ggplot2.tidyverse.org/reference/ ... nnotations
Mickaël
mickael.canouil.fr | rlille.fr

Jérémy Jachacz
Messages : 153
Enregistré le : 15 Avr 2014, 12:56

Re: ggplot 2 : facet_wrap couleur titre ou boite

Messagepar Jérémy Jachacz » 18 Déc 2017, 08:16

Merci à vous deux pour vos réponses et complément de réponse.

Je tiens à préciser que le package ggplot2 est très bien fait, je l'utilise largement et je ne voulais en aucun cas le critiquer.

Bonne journée
jérémy
Statisticien (69)


Retourner vers « Questions en cours »

Qui est en ligne

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