ggplot: organisation des boîtes à moustaches de plusieurs variables y pour chaque groupe d'un x continu
Je voudrais créer boxplots de plusieurs variables pour les groupes continues de x-variable. Les boxplots doivent être disposés les uns à côté des autres pour chaque groupe de x.
Les données ressemble à ceci:
require (ggplot2)
require (plyr)
library(reshape2)
set.seed(1234)
x <- rnorm(100)
y.1 <- rnorm(100)
y.2 <- rnorm(100)
y.3 <- rnorm(100)
y.4 <- rnorm(100)
df <- as.data.frame(cbind(x,y.1,y.2,y.3,y.4))
que j'ai ensuite fondu
dfmelt <- melt(df, measure.vars=2:5)
La facet_wrap comme le montre cette solution (
Plusieurs tracés par le facteur dans ggplot (les facettes))
donne-moi chaque variable dans une parcelle individuelle, mais je voudrais avoir les boxplots de chaque variable à côté de l'autre pour chaque bin de x dans un diagramme.
ggplot(dfmelt, aes(value, x, group = round_any(x, 0.5), fill=variable))+
geom_boxplot() +
geom_jitter() +
facet_wrap(~variable)
Cela montre l'axe des variables uns à côté des autres, mais ne pas bin x.
ggplot(dfmelt) +
geom_boxplot(aes(x=x,y=value,fill=variable))+
facet_grid(~variable)
Maintenant, je voudrais produire un tel tracé pour chaque bin de x.
Ce qui doit être changé ou ajouté?
source d'informationauteur sina
Vous devez vous connecter pour publier un commentaire.
Pas exactement ce que vous cherchez. Est-ce la fermer?
MODIFIER (réponse à des OP commentaire)
Vous pouvez mettre du Y, à côté de l'autre dans chaque bin en prenant juste le
facet_grid(...)
appel, mais je ne le recommande pas.Si vous devez le faire de cette façon, c'est encore plus clair à l'aide de facettes:
Remarque l'ajout d'un
bin
colonne dedfmelt
. C'est parce que l'utilisation defactor(round_any(x,0.5))
dans lefacet_grid(...)
formule ne fonctionne pas.