Mis a jour le 2016-05-22, 16:22

Histogrammes

Objectif : on a une variable et on cherche à connaître sa distribution de valeurs.
hist : permet de calculer un histogramme de distribution (en comptant le nombre d'individus sur chaque intervalle) et de la tracer.
hist(vect) : trace un histogramme de la distribution des valeurs du vecteur (avec en ordonnée, le nombre d'individus).
hist(vect, freq = FALSE) : indique en ordonnées les fréquences (< 1) au lieu du nombre d'individus (l'aire sous la courbe vaut alors 1).
hist(vect, breaks = 100) : trace l'histogramme en partageant l'intervalle de variation de vect en 100 sous-intervalles.
hist(vect, breaks = seq(-5, 5, 0.1)) : trace l'histogramme avec comme sous-intervalles seq(-5, 5, 0.1). Les valeurs du vecteur doivent être dans l'intervalle donné ([-5, 5]). Par défaut, chaque intervalle exclut la borne inférieure (sauf le premier) et inclut la borne supérieure (donc ici, [-5,-4], ]-4,-3], ]-3,-2], ..., ]4,5])
On peut aussi faire : hist(vect, xlim = c(-5, 5), breaks = 50).
hist(vect, breaks = 50, col = "lightblue", border = "blue", xlab = "values", main = "title", xaxp = c(0, 50, 10)) : trace l'histogramme en bleu clair avec une bordure bleue, en numérotant l'axe des x de 0 à 50 avec 10 graduations.
his <- hist(vect, breaks = 50, plot = FALSE) : calcule l'histogramme, mais sans le tracer :
Pour tracer 2 histogrammes sur le même graphe :
interv <- seq(-1, 6, 0.2) # suffisamment grand.
his1 <- hist(vect1, breaks = interv, plot = FALSE)
his2 <- hist(vect2, breaks = interv, plot = FALSE)
mat <- rbind(his1$counts, his2$counts)
colnames(mat) <- interv[-1] # Enleve la première valeur.
barplot(mat, beside = TRUE, col = c("red", "blue"), cex.names = 0.5, las = 2)
density : calcule la densité d'un vecteur de données :

Copyright Aymeric Duclert
programmer en R, tutoriel R, graphes en R