17.4 Grupování

U některých funkcí geom_*() je mezi estetikami uvedena jedna s názvem group. Lehko si můžete ověřit, že se nijak nepřekládá do vizuální podoby. Její funkce je totiž jiná. Sděluje ggplot2, že určitá skupina pozorování “patří k sobě” – tvoří jednu skupinu.

Praktické využití lze ilustrovat na proložení křivky v tabulce diamonds:

diamonds %>% 
    ggplot(
        aes(x = carat, y = price)
    ) +
    geom_point() +
    geom_smooth()

V tomto případě se proložila křivka přes všechny pozorování. Můžeme se ale chtít podívat, jestli je závislost stejná pro různé druhy kamenů – například pro skupiny definované kvalitou řezu (cut). V tomto případě použijeme estetiku group:

diamonds %>% 
    ggplot(
        aes(x = carat, y = price, group = cut)
    ) +
    geom_point() +
    geom_smooth()

V tomto případě geom_smooth(), který estetice group rozumí, pracuje s každou skupinou vymezenou hodnotou kategoriální proměnné cut zvlášť. Fakticky každou skupinu proloží její vlastní křivkou.

V praxi je často užitečné pro zpřehlednění využít možnosti mapování jedné proměnné na více estetik:

diamonds %>% 
    ggplot(
        aes(x = carat, y = price, group = cut, color = cut)
    ) +
    geom_point() +
    geom_smooth()

Všiměte si že v tomto případě dostanete stejný výsledek i při namapování kategorické proměnné na estetiku color:

diamonds %>% 
    ggplot(
        aes(x = carat, y = price, color = cut)
    ) +
    geom_point() +
    geom_smooth()