R mette a disposizione un gran numero di possibilità grafiche. Cominciamo ad esaminare le funzionalità più adatte per la visualizzazione di distribuzioni univariate.
barplot(height)
visualizza un diagramma a barre. Ogni barra ha altezza proporzionale ad un elemento di height
ed è etichettata, sull'asse x, con il nome dell'elemento. L'input a barplot
è tipicamente una tabella di contingenza.pie(x)
si comporta come barplot
, ma invece di visulizzare un diagramma a barre visualizza un diagramma areale (a torta). Richiede che tutti i valori di x
siano positivi.boxplot(x, range=1.5)
visualizza un boxplot della distribuzione x
. I baffi del boxplot si estendono al massimo fino a range
volte la distanza interquartile. I punti al di fuori dei baffi sono rappresentati singolarmente. Se range
è uguale a 0, i baffi si estendono fino al massimo e al minimo della distribuzione.hist(x,breaks="Sturges")
visualizza un istogramma della distribuzione x
. Il parametro breaks
determina come vengono divisi i valori di x
in intervalli. Col valore di default si utilizza un algoritmo (di Sturges) per determinare la corretta suddivisione. Se breaks
è un numero, la distribuzione x
viene divisa in breaks
intervalli, tutti della stessa ampiezza. Se invece breaks
è un vettore numerico, i suoi elementi determinano gli estremi degli intervalli. Notare che sull'asse y troviamo la frequenza delle classi se gli intervalli sono tutti di egual ampiezza, la densità altrimenti.Normalmente la visualizzazione è molto "noiosa", ma è possibile modificarla ricorrendo ai molti parametri opzionali che trovate indicati nella dispensa di Muggeo e Ferrara. Eccone alcuni:
main
determina il titolo del graficosub
determina il sottotitolo del graficocol
è un vettore con i colori dei vari elementi del grafico (i colori delle barre, delle "porzioni di torta", etc...)xlab
determina l'etichetta per l'asse xylab
determina l'etichetta per l'asse yxlim
è un vettore di lunghezza due con i valori minimi e massimi da visualizzare sull'asse xylim
è un vettore di lunghezza due con i valori minimi e massimi da visualizzare sull'asse yAlcune rappresentazioni grafiche possono essere usate per confrontare più distribuzioni univariate dello stesso tipo
barplot(rbind(x,y),besides=FALSE)
visualizza due serie di barre, una per x
ed una per y
. Le due serie sono normalmente sovrapposte, ma impostando besides
a TRUE
, esse vengono affiancate. Ignorate per ora il comando rbind
, lo tratteremo in una lezione successiva.boxplot(x,...,range=1.5)
può essere utilizzando specificando più di un vettore numerico di dati. In questo caso, visualizza più boxplot affiancati.Esiste una serie di comandi che non creano un nuovo grafico, ma consentono di disegnare all'interno di uno già aperto.
title(main=NULL, sub=NULL)
scrive il titolo (main
) e il sottotitolo (sub
) del grafico. Notare che se il grafico ha già titolo o sottotitolo, quello nuovo si sovrappone al vecchio, e non lo sostituisce.abline(a,b)
: traccia una retta con intercetta a e coefficiente angolare b;abline(h)
: traccia una linea orizzontale ad altezza h;abline(v)
: traccia una linea verticale alla posizione v.È possibile salvare i grafici creati con il comando R, ma le possibilità sono limitate. Basta dare il comando savePlot(filename,type="png")
. Il comando salva l'ultimo grafico che è stato disegnato sul nome file indicato. Il formato dell'immagine è png
, ma si può anche scegliere jpeg
, tiff
o bmp
.
Questo metodo è però molto limitato, non consente infatti di salvare in formati vettoriali come PDF o Postiscript. Il modo più efficace per generare questo tipo di file, e che può essere usato anche per le immagini bitmap, è disegnare il grafico direttamente sul file destinazione. Per far ciò, occorre aprire prima un nuovo dispositivo di input con il comando opportuno. Nel caso di file PDF, il comando è
pdf(filename)
. Dopo aver dato questo comando, tutte le successive operazioni grafiche avvengono sul file indicato in formato PDF. Una volta finito di disegnare il grafico, la funzione dev.off()
chiude il nuovo dispositivo di output. I grafici successivi saranno visualizzati di nuovo sullo schermo.
> pdf("prova.pdf") > hist(log(1:100),col="red") > dev.off() X11cairo 2