ggplot2 - Plot multipli
In questo capitolo ci concentreremo sulla creazione di più grafici che possono essere ulteriormente utilizzati per creare grafici tridimensionali. L'elenco delle trame che verranno trattate include:
- Grafico densità
- Box Plot
- Dot Plot
- Trama di violino
Useremo il set di dati "mpg" come usato nei capitoli precedenti. Questo set di dati fornisce dati sul risparmio di carburante del 1999 e del 2008 per 38 modelli di auto popolari. Il set di dati viene fornito con il pacchetto ggplot2. È importante seguire il passaggio indicato di seguito per creare diversi tipi di grafici.
> # Load Modules
> library(ggplot2)
>
> # Dataset
> head(mpg)
# A tibble: 6 x 11
manufacturer model displ year cyl trans drv cty hwy fl class
<chr> <chr> <dbl> <int> <int> <chr> <chr> <int> <int> <chr> <chr>
1 audi a4 1.8 1999 4 auto(l5) f 18 29 p compa~
2 audi a4 1.8 1999 4 manual(m5) f 21 29 p compa~
3 audi a4 2 2008 4 manual(m6) f 20 31 p compa~
4 audi a4 2 2008 4 auto(av) f 21 30 p compa~
5 audi a4 2.8 1999 6 auto(l5) f 16 26 p compa~
6 audi a4 2.8 1999 6 manual(m5) f 18 26 p compa~
Grafico densità
Un diagramma di densità è una rappresentazione grafica della distribuzione di qualsiasi variabile numerica nel set di dati menzionato. Utilizza una stima della densità del kernel per mostrare la funzione di densità di probabilità della variabile.
Il pacchetto "ggplot2" include una funzione chiamata geom_density () per creare un grafico di densità.
Eseguiremo il seguente comando per creare un grafico di densità:
> p −- ggplot(mpg, aes(cty)) +
+ geom_density(aes(fill=factor(cyl)), alpha=0.8)
> p
Possiamo osservare varie densità dalla trama creata di seguito:
Possiamo creare la trama rinominando gli assi xey che mantiene una maggiore chiarezza con l'inclusione di titolo e legende con diverse combinazioni di colori.
> p + labs(title="Density plot",
+ subtitle="City Mileage Grouped by Number of cylinders",
+ caption="Source: mpg",
+ x="City Mileage",
+ fill="# Cylinders")
Box Plot
Il box plot, chiamato anche box and whisker plot, rappresenta il riepilogo a cinque numeri dei dati. I cinque riepiloghi numerici includono valori come minimo, primo quartile, mediana, terzo quartile e massimo. La linea verticale che attraversa la parte centrale del box plot è considerata “mediana”.
Possiamo creare box plot usando il seguente comando:
> p <- ggplot(mpg, aes(class, cty)) +
+ geom_boxplot(varwidth=T, fill="blue")
> p + labs(title="A Box plot Example",
+ subtitle="Mileage by Class",
+ caption="MPG Dataset",
+ x="Class",
+ y="Mileage")
>p
Qui stiamo creando box plot rispetto agli attributi di class e cty.
Dot Plot
I grafici a punti sono simili ai grafici a dispersione con la sola differenza di dimensione. In questa sezione, aggiungeremo un diagramma a punti al diagramma a riquadri esistente per avere un'immagine e una chiarezza migliori.
Il box plot può essere creato utilizzando il seguente comando:
> p <- ggplot(mpg, aes(manufacturer, cty)) +
+ geom_boxplot() +
+ theme(axis.text.x = element_text(angle=65, vjust=0.6))
> p
Il diagramma a punti viene creato come indicato di seguito:
> p + geom_dotplot(binaxis='y',
+ stackdir='center',
+ dotsize = .5
+ )
Trama di violino
Anche la trama del violino viene creata in modo simile con il solo cambio di struttura dei violini invece della scatola. L'output è chiaramente menzionato di seguito:
> p <- ggplot(mpg, aes(class, cty))
>
> p + geom_violin()