Wie plot 2 kategoriale Variablen auf der X-Achse und zwei kontinuierlichen Variablen, die als "Füllung" mit ggplot2-Paket?

Ich habe ein dataset mit zwei kategoriale Variablen, viz., Year und Category und zwei kontinuierliche Variablen TotalSales und 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

In MS Excel können wir gerne erhalten Sie eine pivot-plot für die gleiche Tabelle, mit Jahr und Kategorie als ACHSE, "TotalSales" und AverageCount als sigma-Werte.

Mit R, wie erstelle ich solch ein Diagramm wie in der Abbildung gezeigt, wo der kategorische Variablen werden gezeigt, wie mehrere Schichten in den gleichen graph?

Wie plot 2 kategoriale Variablen auf der X-Achse und zwei kontinuierlichen Variablen, die als

P. S. Eine option, dass ich sehen konnte ist, durch teilen der Daten-frame in zwei verschiedene dataframes (Eine für das Jahr 2013 und ein weiteres für das Jahr 2014 in unserem Fall) und zeichnen Sie zwei Diagramme, die auf einem einzigen Grundstück, angeordnet in mehreren Reihen den gleichen Effekt zu erhalten. Aber gibt es eine Möglichkeit, es zu ziehen, wie oben gezeigt?


Beispiel die Daten der oben

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
)
Vielleicht können Sie reshape2::melt die beiden Variablen für long-format zuerst? (Nicht getestet..)

InformationsquelleAutor sunitprasad1 | 2015-05-04

Schreibe einen Kommentar