Comment tracer les 2 variables catégorielles sur l'axe des abscisses et les deux variables continues comme “remplir” à l'aide du package ggplot2?
J'ai un dataset qui a deux variables catégorielles, viz., Year
et Category
et deux variables continues TotalSales
et AverageCount
.
Year Category TotalSales AverageCount
1 2013 Beverages 102074.29 22190.06
2 2013 Condiments 55277.56 14173.73
3 2013 Confections 36415.75 12138.58
4 2013 Dairy Products 30337.39 24400.00
5 2013 Seafood 53019.98 27905.25
6 2014 Beverages 81338.06 35400.00
7 2014 Condiments 55948.82 19981.72
8 2014 Confections 44478.36 24710.00
9 2014 Dairy Products 84412.36 32466.00
10 2014 Seafood 65544.19 14565.37
Dans MS Excel, on peut être heureux d'obtenir un pivot de l'intrigue de la même table, avec l'Année et la Catégorie de l'AXE, TotalSales et AverageCount sigma valeurs.
À l'aide de R, comment dessiner un graphique comme le montre l'image, où les variables catégorielles sont présentés comme de multiples couches dans le même graphique?
P. S. Une option que j'ai pu voir est, en divisant la trame de données en deux dataframes (l'Une pour l'année 2013 et une autre pour l'année 2014 dans notre cas) et de dessiner deux graphiques sur une seule parcelle, disposées en plusieurs rangées pour obtenir le même effet. Mais est-il possible de le dessiner comme indiqué ci-dessus?
De l'échantillon de données utilisé ci-dessus
dat <- structure(list(Year = c(2013L, 2013L, 2013L, 2013L, 2013L, 2014L,
2014L, 2014L, 2014L, 2014L), Category = structure(c(1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L), .Label = c("Beverages", "Condiments",
"Confections", "Dairy Products", "Seafood"), class = "factor"),
TotalSales = c(102074.29, 55277.56, 36415.75, 30337.39, 53019.98,
81338.06, 55948.82, 44478.36, 84412.36, 65544.19), AverageCount = c(22190.06,
14173.73, 12138.58, 24400, 27905.25, 35400, 19981.72, 24710,
32466, 14565.37)), .Names = c("Year", "Category", "TotalSales",
"AverageCount"), class = "data.frame", row.names = c(NA, -10L
)
reshape2::melt
les deux variables à long format? (Pas testé..)
OriginalL'auteur sunitprasad1 | 2015-05-04
Vous devez vous connecter pour publier un commentaire.
Vous devez le reformater vos données, comme @EDi vous montre comment dans l'une de vos anciennes questions (ggplot : Multi variables multiples (variable continue) le tracé de) et @la juste liberté d'enseignement discimus suggéré dans les commentaires.
Ensuite, vous pouvez utiliser la recherche à facettes comme suit:
Si vous vous intéressez particulièrement à rendre la figure plus compatible avec un Excel-regardez, il ya certaines stratégies dans la réponse à la question qui pourrait être utile: Comment puis-je tracer des graphiques avec des catégories imbriquées axes?.
Vos données d'origine dans un format plus facile à coller format:
Heureux, il a aidé @sunitprasad1. Quand vous dites "encore une variable catégorielle" la variable qui sont en pensez-vous? Année, la catégorie de produit, ou le type de la valeur? Pour l'un de ces si vous ajoutez les niveaux supplémentaires à votre bloc de données, ils doivent être ajoutés à la parcelle avec le même code. J'ai peut être pas compris la question.
Je l'ai essayé pendant ce temps. La table, je suis aide a
Year, Quarter, Product and Category
etSales, Count
. Je voulais savoir comment dois-je formater, re-structure ou d'organiser les données dans un format lisible par l'utilisateur si j'ai ajoutéQuarter
de ce code et de voir comment il va. Ainsi, le graphique qui est venu après l'ajout de la troisième variable, si instructif, est une source de grande confusion. Je pense que je devrais essayer de plus sur le lien que vous avez fourni dans votre réponse. Va poster une nouvelle question, dans le cas où je suis coincé.Semble que vous pourriez voulez facette par 2 variables si vous utilisez année et par trimestre. Découvrez le livre de recettes pour R pour quelques bons exemples de facettage avec 2 variables cookbook-r.com/Graphs/Facets_(ggplot2).
OriginalL'auteur LJW