Visualizzazioni grafiche in R con ggplot2

R per utenti SAS

Melinda Higgins, PhD

Research Professor/Senior Biostatistician Emory University

Pacchetto ggplot2

logo hexsticker ggplot2

  • ggplot2 è un potente pacchetto grafico per R
  • "GG" in ggplot significa "grammar of graphics"
  • ggplot2 usa layer sovrapposti per costruire grafici
  • Si aggiungono uno o più oggetti geometrici al layer base
R per utenti SAS

Layer - layer base

# Crea grafico con x=sex e y=diameter
ggplot(data = abalone, aes(sex, diameter))
  • Definisci il layer base con ggplot()
  • Imposta data = abalone
  • Imposta aes su sex e diameter

  • Nessun oggetto grafico ancora

  • L'asse x è pronto per sex
  • L'asse y è pronto per diameter
  • La griglia è impostata

ambiente grafico ggplot2, nessun boxplot ancora

R per utenti SAS

Layer - aggiungi geom boxplot

# Aggiungi il geom boxplot
ggplot(data = abalone,
       aes(sex, diameter)) +
  geom_boxplot()
  • L'operatore + aggiunge layer
  • Aggiunto geom_boxplot()

  • Risultato: serie di boxplot

  • Diametri degli abalone per sesso
  • F femmine, I giovani, M maschi

boxplot ggplot2 aggiunti

R per utenti SAS

Layer - aggiungi un tema

# Aggiungi il tema in bianco e nero
ggplot(data = abalone,
       aes(sex, diameter)) +
  geom_boxplot() +
  theme_bw()
  • Aggiungi un layer "theme" con theme_bw()
  • Rimuove lo sfondo grigio
  • Disegna un riquadro nero attorno al grafico

boxplot ggplot2 con tema bianco e nero

R per utenti SAS

Cambia geom boxplot in geom violin

# Cambia in geom_violin()
ggplot(data = abalone,
       aes(sex, diameter)) +
  geom_violin() +
  theme_bw()
  • geom_violin sostituisce geom_boxplot
  • Crea una forma a violino
  • Riflette la densità dei dati
  • Cambiamento semplice per una nuova figura

grafico a violino ggplot2

R per utenti SAS

Istogramma a variabile singola

# Istogramma di shuckedWeight
ggplot(abalone, aes(shuckedWeight)) +
  geom_histogram()
  • Crea un istogramma per una variabile
  • Una variabile = una estetica
  • Aggiungi geom_histogram()
  • Imposta aes() su shuckedWeight
  • I colori predefiniti vanno cambiati

istogramma ggplot2 tutto nero

R per utenti SAS

Istogramma: aggiungi colori

# Linee nere e riempimento azzurro
ggplot(abalone, aes(shuckedWeight)) +
  geom_histogram(color = "black",
                 fill = "lightblue")
  • Modifica i parametri grafici
  • Imposta color dei bordi
  • Imposta fill delle barre
  • Ogni opzione va tra le ()
  • L'istogramma è molto più chiaro

istogramma ggplot2 con barre blu e contorni neri

R per utenti SAS

Istogramma: aggiungi titolo e assi

# Aggiungi etichette degli assi e titolo
ggplot(abalone, aes(shuckedWeight)) +
  geom_histogram(color = "black",
                 fill = "lightblue") +
  xlab("Shucked Weight") +
  ylab("Frequency Counts") +
  ggtitle("Shucked Weights Histogram")
  • Aggiungi etichette migliori e titolo
  • Usa xlab() e ylab() per gli assi
  • Usa ggtitle() per il titolo
  • Figura pronta per la pubblicazione

istogramma ggplot2 con etichette assi e titolo

R per utenti SAS

Crea uno scatter plot

# Scatter plot con geom_point()
ggplot(abalone,
       aes(rings, shellWeight)) +
  geom_point()
  • Lo aes di uno scatter plot richiede due variabili
  • geom_point() aggiunge i punti
  • Scatter plot di shellWeight per rings

scatter plot ggplot2 di shellweight per rings

R per utenti SAS

Scatter plot: aggiungi linea smussata

# Aggiungi linea di fit smussata
ggplot(abalone,
       aes(rings, shellWeight)) +
  geom_point() +
  geom_smooth()
  • Allo scatter plot aggiungi geom_smooth()
  • Include un'area di confidenza ombreggiata

scatter plot ggplot2 con linea di fit smussata

R per utenti SAS

Crea pannelli per un'altra variabile

# Aggiungi pannelli con facet_wrap()
ggplot(abalone,
       aes(rings, shellWeight)) +
  geom_point() +
  geom_smooth() +
  facet_wrap(vars(sex))
  • Aggiungi un altro layer allo scatter plot
  • Crea pannelli per ogni sesso dell'abalone
  • Aggiungi il layer facet_wrap()
  • vars(sex) definisce la variabile per i pannelli

scatter plot ggplot2 con 3 pannelli per sesso

R per utenti SAS

Resto del corso

  • Il Capitolo 1 chiude con una breve intro ai grafici
    • basi grafiche con ggplot2
    • visualizza misure di abalone per sesso
  • Il Capitolo 2 tratta il data wrangling
    • pulisci il dataset abalone
  • Il Capitolo 3 tratta l'esplorazione dati
    • statistiche descrittive, correlazioni e test di confronto
  • Il Capitolo 4 tratta modellazione e presentazione
    • predici l'età degli abalone dalle misure
    • esplora i modelli per sesso
R per utenti SAS

Facciamo qualche grafico per gli abalone

R per utenti SAS

Preparing Video For Download...