2017-09-30 2 views
0

C'est la suite d'une table de contingence:création graphique à barres en cluster à partir du tableau de contingence en R

rating high low medium 
1  158 1 36 
2  77  2 25 
3  106 10 36 
4  82  56 71 
5  60  97 62 

Je dois créer un terrain de bar en cluster comme ceci:

enter image description here Comment puis-je faire? J'ai essayé bar plot et ggplot, mais ils n'ont pas fonctionné.

+0

Évitez simplement les barres. http://ggplot2.tidyverse.org/reference/geom_bar.html –

Répondre

1

Le truc avec l'obtenir pour travailler avec ggplot est de réaliser que vous avez besoin essentiellement trois éléments d'information: 1) rating, 2) les valeurs de high, medium et low, et 3) la couleur qui sera utilisée pour différencier. Le problème est que les données ne sont pas actuellement dans ce format. Nous pouvons utiliser la fonction gather du tidyverse pour résoudre ce problème, puis tracer les données.

library(tidyverse) 

dat = data_frame(rating=1:5, high=c(158, 77, 106, 82, 60), medium=c(1, 20, 10, 56, 97), low=c(36,25,36,71,62)) 
dat = dat %>% 
    gather(key=color, value=value, -rating) 
ggplot(data=dat, aes(x=rating, y=value, fill=color)) + 
    geom_bar(stat='identity', position='dodge') 

gather travaille essentiellement en prenant un tas de colonnes et en utilisant les noms de colonnes que les valeurs de la variable key nouvellement créée (ce que nous appelons couleur) et les valeurs de ces colonnes que les valeurs de notre nouveau créé value colonne (que nous appelons la valeur).

+0

Point trivial: vous avez échangé les nombres moyens et faibles de Marie, mais comme Marie votre intrigue sort par ordre alphabétique * haut, bas, moyen * que je vois comme sous -optimal – Henry

+0

@Henry ah, oui, il semble que j'ai fait échanger «moyen» et «faible». Pour ce qui est de les mettre dans l'ordre (vraisemblablement) correct, je n'ai pas considéré cela comme le sujet principal de la question et je ne l'ai donc pas abordé. Comment réorganiser les barres/couleurs devrait être sa propre question, et celui qui a sans doute déjà été répondu ici. – brittenb

+0

@brittneb, Voulez-vous s'il vous plaît laissez-moi savoir comment je peux supprimer l'arrière-plan et aussi changer les couleurs dans l'intrigue? – Mary