Accéder au contenu principal

Graphiques linéaires en R

Vue d'ensemble

Les graphiques linéaires sont créés à l'aide de la fonction lines(x , y, type=) où x et y sont des vecteurs numériques de points (x,y) à relier. type= peut prendre les valeurs suivantes :

  
typedescription
ppoints
llignes
opoints et lignes superposés
b, cpoints (vides si "c") reliés par des lignes
s, Smarches d'escalier
hlignes verticales en forme d'histogramme
nne produit aucun point ou ligne

La fonction lines( ) ajoute des informations à un graphique. Il ne peut pas produire un graphique seul. Elle suit généralement la commande plot(x , y) qui produit un graphique.

Par défaut, plot( ) trace les points (x,y). Utilisez l'option type="n" de la commande plot( ) pour créer le graphique avec les axes, les titres, etc., mais sans tracer les points.

Exemple

Dans le code suivant, chacune des options type= est appliquée au même ensemble de données. La commande plot( ) établit le graphique, mais ne trace pas les points.

x <- c(1:5); y <- x # create some data
par(pch=22, col="red") # plotting symbol and color
par(mfrow=c(2,4)) # all plots on one page
opts = c("p","l","o","b","c","s","S","h")
for(i in 1:length(opts)){
  heading = paste("type=",opts[i])
  plot(x, y, type="n", main=heading)
  lines(x, y, type=opts[i])
}

options de lignes sans points

Ensuite, nous démontrons chacune des options type= lorsque plot( ) configure le graphique et _ fait _ tracer les points.

x <- c(1:5); y <- x # create some data
par(pch=22, col="blue") # plotting symbol and color
par(mfrow=c(2,4)) # all plots on one page
opts = c("p","l","o","b","c","s","S","h")
for(i in 1:length(opts){
  heading = paste("type=",opts[i])
  plot(x, y, main=heading)
  lines(x, y, type=opts[i])
}

options de lignes avec points

Comme vous pouvez le constater, l'option type="c" n'est différente de l'option type="b" que si le tracé des points est supprimé dans la commande plot( ).

Pour illustrer la création d'un graphique linéaire plus complexe, représentons la croissance de 5 orangers au fil du temps. Chaque arbre aura sa propre ligne distinctive. Les données proviennent de l'ensemble de données Orange.

# Create Line Chart

# convert factor to numeric for convenience
Orange$Tree <- as.numeric(Orange$Tree)
ntrees <- max(Orange$Tree)

# get the range for the x and y axis
xrange <- range(Orange$age)
yrange <- range(Orange$circumference)

# set up the plot
plot(xrange, yrange, type="n", xlab="Age (days)",
   ylab="Circumference (mm)" )
colors <- rainbow(ntrees)
linetype <- c(1:ntrees)
plotchar <- seq(18,18+ntrees,1)

# add lines
for (i in 1:ntrees) {
  tree <- subset(Orange, Tree==i)
  lines(tree$age, tree$circumference, type="b", lwd=1.5,
    lty=linetype[i], col=colors[i], pch=plotchar[i])
}

# add a title and subtitle
title("Tree Growth", "example of line plot")

# add a legend
legend(xrange[1], yrange[2], 1:ntrees, cex=0.8, col=colors,
   pch=plotchar, lty=linetype, title="Tree")

graphique linéaire

Aller plus loin

Essayez les exercices de ce cours sur le traçage et la visualisation de données en R.