Accéder au contenu principal
Documents
Partager
LinkedIn
Facebook
Twitter
Copy
R DocumentationEntrée de données en RGestion des données en RGraphiques en RR InterfaceStatistiques en R

Graphes de treillis en R

Le paquetage lattice</a >, écrit par Deepayan Sarkar, vise à améliorer les graphiques R de base en fournissant des valeurs par défaut améliorées et une visualisation simplifiée des relations multivariées. L'une de ses principales caractéristiques est la possibilité de créer des graphiques en treillis, qui permettent d'afficher des variables ou des relations entre variables, conditionnées par une ou plusieurs autres variables.

Il prend en charge différents types de tracés tels que les diagrammes de dispersion, les tracés linéaires, les diagrammes à barres et les histogrammes, entre autres.

Le format type est le suivant

graph_type(formula, data=)

graph_type est sélectionné dans la liste ci-dessous. formula spécifie la/les variable(s) à afficher et les éventuelles variables de conditionnement. Par exemple ~x|A signifie afficher la variable numérique x pour chaque niveau du facteur A. y~x | A*B signifie afficher la relation entre les variables numériques y et x séparément pour chaque combinaison des niveaux des facteurs A et B. ~x signifie afficher la variable numérique x seule.

     
graph_type description exemples de formules
barchart diagramme en barres xAou Ax
bwplot boxplot xAou Ax
cloud Diagramme de dispersion en 3D z~x*y
contourplot Tracé de contour en 3D z~x*y
densityplot parcelle de densité des noyaux ~x
dotplot dotplot ~x
histogram histogram ~x
tracé de niveau Tracé de niveau en 3D z~y*x
parallèle tracé des coordonnées parallèles cadre de données
splom matrice de nuage de points cadre de données
stripplot parcelles en bandes Ax ou xA
xyplot scatterplot y~x
fil de fer Graphique filaire en 3D z~y*x

Voici quelques exemples. Ils utilisent les données de la voiture (kilométrage, poids, nombre de vitesses, nombre de cylindres, etc.) de la base de données mtcars.

# Lattice Examples
library(lattice)
attach(mtcars)

# create factors with value labels
gear.f<-factor(gear,levels=c(3,4,5),
  labels=c("3gears","4gears","5gears"))
cyl.f <-factor(cyl,levels=c(4,6,8),
  labels=c("4cyl","6cyl","8cyl"))

# kernel density plot
densityplot(~mpg,
  main="Density Plot",
  xlab="Miles per Gallon")

# kernel density plots by factor level
densityplot(~mpg|cyl.f,
  main="Density Plot by Number of Cylinders",
  xlab="Miles per Gallon")

# kernel density plots by factor level (alternate layout)
densityplot(~mpg|cyl.f,
   main="Density Plot by Numer of Cylinders",
   xlab="Miles per Gallon",
   layout=c(1,3))

# boxplots for each combination of two factors
bwplot(cyl.f~mpg|gear.f,
   ylab="Cylinders", xlab="Miles per Gallon",
   main="Mileage by Cylinders and Gears",
   layout=(c(1,3))

# scatterplots for each combination of two factors
xyplot(mpg~wt|cyl.f*gear.f,
   main="Scatterplots by Cylinders and Gears",
   ylab="Miles per Gallon", xlab="Car Weight")

# 3d scatterplot by factor level
cloud(mpg~wt*qsec|cyl.f,
   main="3D Scatterplot by Cylinders")

# dotplot for each combination of two factors
dotplot(cyl.f~mpg|gear.f,
   main="Dotplot Plot by Number of Gears and Cylinders",
   xlab="Miles Per Gallon")

# scatterplot matrix
splom(mtcars[c(1,3,4,5,6)],
   main="MTCARS Data")

densité 1 densité 2 densité 3 diagramme en boîte

nuage de points Diagramme de dispersion 3D nuage de points matrice de nuage de points

Notez, comme dans le graphique 1, que la spécification d'une variable de conditionnement est facultative. La différence entre les graphiques 2 et 3 est l'utilisation de l'option de mise en page pour contrôler l'emplacement des panneaux.

Personnalisation des graphes de treillis

Contrairement aux graphes de base R, les graphes de treillis ne sont pas affectés par la plupart des options définies dans la fonction par( ). Pour voir les options qui peuvent être modifiées, consultez help(xyplot). Il est souvent plus facile de définir ces options dans le cadre des fonctions de traçage de haut niveau décrites ci-dessus. En outre, vous pouvez écrire des fonctions qui modifient le rendu des panneaux. En voici un exemple.

# Customized Lattice Example
library(lattice)
panel.smoother <- function(x, y) {
  panel.xyplot(x, y) # show points
  panel.loess(x, y)  # show smoothed line
}
attach(mtcars)
hp <- cut(hp,3) # divide horse power into three bands
xyplot(mpg~wt|hp, scales=list(cex=.8, col="red"),
   panel=panel.smoother,
   xlab="Weight", ylab="Miles per Gallon",
   main="MGP vs Weight by Horse Power")

treillis graphique personnalisé

Aller plus loin

Les graphiques en treillis constituent un système graphique complet à part entière. Le livre de Deepanyan Sarkar Lattice : Multivariate Data Visualization with R</a > est la référence absolue. Vous pouvez également consulter le guide de l'utilisateur de Trellis</a >. Dr. Ihaka a créé une merveilleuse série de diapositives </a > sur le sujet. Une excellente étude préliminaire des graphes en treillis se trouve dans W.S. Le livre classique de Cleveland Visualizing Data</a >.

Pratiquer

Essayez ce cours sur les distributions de probabilités multivariées en R</a >.