Indice
Scatterplot (grafico a dispersione)
Per rappresentare una o più variabili cardinali, viene comunemente utilizzato il grafico a dispersione o scatterplot (vedi anche: grafico a dispersione).
Si tratta della rappresentazione grafica di default prodotta dal comando plot per i vettori numerici.
plot(ChickWeight$weight)
Per convenzione, la variabile indipendente viene posta sull'asse delle ascisse e quella dipendente sull'asse delle ordinate: in plot(x,y)
, la prima variabile sarà quella indipendente:
plot(ChickWeight$Time,ChickWeight$weight)
Usare diversi colori per i punti
Possiamo rappresentare una terza variabile (di raggruppamento), modificando i colori dei punti. In questo caso, possiamo rappresentare ChickWeight$Diet
, prima scegliendo i colori (col1←c(“red”, “green”, “blue”, “yellow”)
), e poi associandoli ai livelli del fattore (col1[ChickWeight$Diet]
).
# definiamo un vettore di colori per i livelli di ChickWeight$Diet col1<-c("red", "green", "blue", "yellow") # grafico con titolo, etichette degli assi, e punti colorati plot(ChickWeight$Time,ChickWeight$weight, main="Weight by Time", xlab="Time", ylab="Weight", col = col1[ChickWeight$Diet]) # aggiungiamo una legenda per i colori dei punti legend("topleft", title="Diet", cex = 0.8, legend=levels(ChickWeight$Diet), fill = col1)
Per i parametri della legenda, cfr. Legenda (legend).
Usare diversi simboli per rappresentare i punti
Per rappresentare gruppi diversi all'interno dello scatterplot, possiamo anche utilizzare simboli diversi (cfr. parametri grafici: i simboli). Il codice viene qui riportato a scopo esemplificativo, in quanto il grafico così composto non risulta gradevole e leggibile.
# scegliamo i simboli da utilizzare per i livelli di ChickWeight$Diet punti<-c(0,1,2,6) # grafico plot(ChickWeight$Time,ChickWeight$weight, main="Weight by Time", xlab="Time", ylab="Weight", pch = punti[ChickWeight$Diet]) # legenda legend("topleft", title="Diet", cex = 0.8, legend=levels(ChickWeight$Diet), pch=punti)
Vedi anche: Grafici a dispersione con ggplot2
Script di esempio
- Es Scatterplot.R
plot(ChickWeight$weight) plot(ChickWeight$Time,ChickWeight$weight) # grafico con punti a colori col1<-c("red", "green", "blue", "yellow") plot(ChickWeight$Time,ChickWeight$weight, main="Weight by Time", xlab="Time", ylab="Weight", col = col1[ChickWeight$Diet]) legend("topleft", title="Diet", cex = 0.8, legend=levels(ChickWeight$Diet), fill = col1) # grafico con diversi simboli punti<-c(0,1,2,6) plot(ChickWeight$Time,ChickWeight$weight, main="Weight by Time", xlab="Time", ylab="Weight", pch = punti[ChickWeight$Diet]) legend("topleft", title="Diet", cex = 0.8, legend=levels(ChickWeight$Diet), pch=punti)