Procédures graphiques avec R


Les graphiques sont dessinés sur un périphérique graphique. Au démarrage, R lance automatiquement un périphérique graphique en fonction du système d'exploitation. Ceci peut se faire manuellement. Les commandes sont x11() pour UNIX, windows() pour Windows, quartz() pour MAC OS X.

Les commandes graphiques sont reparties en trois groupes:

Fonctions de haut niveau : Création de nouvelles graphiques sur le périphérique graphique avec des axes, des étiquettes, des titres et ainsi de suite.
Fonctions de bas niveau : Ajout d'informations à un graphique existant, tels que des points supplémentaires, des lignes et des étiquettes.
Des fonctions graphiques interactives : Permettant d'ajouter des informations de manière interactive, ou extraire des informations d'un tracé existant, en utilisant la souris.


<h2 class="formatter-title wiki-paragraph-2" id="paragraph-commandes-graphiques-de-haut-niveau">Commandes graphiques de haut niveau</h2>


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-la-fonction-plot">La fonction plot()</h3>


Code R :
 
plot(x, y) # première forme
plot(xy) #deuxième forme
 


Si x et y sont des vecteurs, plot( x , y ) produit un nuage de points de y contre x. Le même effet peut être produit en fournissant un seul argument (seconde forme) sous forme d'une liste contenant deux éléments x et y ou d'une matrice à deux colonnes.


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-affichage-de-donnees-multivariees">Affichage de données multivariées</h3>



Si x est une matrice numérique ou une data frame, la commande:

Code R :
pairs(x)


Produit une matrice de graphique où chaque colonne de x est représentée en fonction de toutes les autres colonnes x.



<h3 class="formatter-title wiki-paragraph-3" id="paragraph-les-arguments-des-fonctions-graphiques-de-haut-niveau">Les arguments des fonctions graphiques de haut niveau</h3>


Il y a un certain nombre d'arguments qui peuvent être passés à des fonctions graphiques de haut niveau , comme suit:

add=TRUE
Oblige la fonction d'agir comme une fonction graphique de bas niveau, superposant le graphique sur le graphique courant (accepté par certaines fonctions seulement).

axes=FALSE
Supprime la génération des axes-utile pour ajouter vos propres axes personnalisés avec la fonction axis(). La valeur par défaut, axes=TRUE , ajoute les axes.

log="x"
log="y"
log="xy"
Met les axes X, Y ou les deux à la fois à l'echelle logarithmique. Cela fonctionne pour beaucoup, mais pas pour tous les types de graphiques.

type=
Le type= est un argument de contrôlant le type de graphique produit, comme suit:

type="p"
trace des points (par défauts)
type="l"
trace des lignes
type="b"
Trace des points reliés par des lignes (les deux)
type="o"
Trace des points recouverts par les lignes
type="h"
Lignes verticales à partir des points à l'axe zéro
type="s"
type="S"
Graphique en escalier.

type="n"
Aucun point n'est dessiné. Cependant les axes sont toujours dessinés (par défaut) et le système de coordonnées est mis en place en fonction des données. Idéal pour la création des graphique avec la suite des fonctions graphiques de bas niveau.

xlab= "titre de l'axe des x"
ylab= "titre de l'axe des y"
Titre des axes x et y. Utilisez ces arguments pour changer les étiquettes par défaut, généralement le nom des objets utilisés dans l'appel de la fonction graphique.

main= "titre du graphique"
Titre de la figure, placée en haut du graphique dans une grande police.

sub= "Sous-titre"
Sous-titre, placé juste en dessous de l'axe des x dans une police plus petite.


<h2 class="formatter-title wiki-paragraph-2" id="paragraph-commandes-graphiques-de-bas-niveau">Commandes graphiques de bas niveau</h2>

Parfois les commandes graphiques de haut niveau ne produisent pas exactement le type de graphique désiré. Dans ce cas, les commandes graphiques de bas niveau peuvent être utilisées pour ajouter des informations supplémentaires (comme des points, des lignes ou du texte) au graphique en cours.

Quelques-unes des fonctions de bas niveau les plus utiles sont les suivantes:

points(x, y)
lines(x, y)
Ajoute des points ou des lignes connectées au graphique en cours. L'argument type= de plot() peut être aussi passé à ces fonctions (par défaut "p" pour points() et "l" pour lines()).

text(x, y, labels, ...)
Ajoute du texte au graphique au niveau des points de coordonnées données par x, y . Normalement labels est un vecteur de nombre entier ou un vecteur de caractères auquel cas labels est tracé au point de coordonnées (x[i], y[i]) . La valeur par défaut est 1:length(x) .

Remarque: Cette fonction est souvent utilisée dans la séquence

Code R :
plot (x, y, type = "n"); text (x, y, names)


Le paramètre graphique type="n" supprime les points, mais met en place les axes, et la fonction text() fournit des caractères spéciaux, comme spécifié par le vecteur de caractères [i]names
pour les points.


abline(h= y )
abline(v= x )
Ajoute une ligne.
h= y Ajoute une ligne horizontale tout au long du graphique en partant du point d'ordonnée y.
v= x ajoute une ligne verticale tout au long du graphique en partant du point d'abscisse x (à spécifier).

legend(x, y, legend, ...)
Ajoute une légende au graphique actuel à la position spécifiée.

title(main, sub)
Ajoute un titre main en haut du graphique en cours dans une police de grande taille et (éventuellement) un sous-titre sub, en bas du graphique, dans une police plus petite.

axis(side, ...)
Ajoute un axe au graphique actuel sur le côté donné par le premier argument (1 à 4, en comptant dans le sens horaire en partant du bas).


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-annotation-mathematique">Annotation mathématique</h3>

Dans certains cas, il est utile d'ajouter des symboles et des formules mathématiques à un graphique. Ceci peut être réalisé dans R en spécifiant une expression plutôt qu'une chaîne de caractères dans l'une des fonctions quelconques text , mtext , axis , ou title. Par exemple, le code suivant dessine la formule pour la fonction de probabilité binomiale:

Code R :
text(x, y, expression(paste(bgroup("(", atop(n, x), ")"), p^x, q^{n-x})))  


Plus d'informations peuvent être obtenues en utilisant les commandes R:

Code R :
 
help(plotmath)
example(plotmath)
demo(plotmath)
 



<h3 class="formatter-title wiki-paragraph-3" id="paragraph-polices-vectorielles-d-hershey">Polices vectorielles d'Hershey</h3>


Il est possible de spécifier des polices vectorielles d'Hershey pour le rendu de texte lors de l'utilisation des fonctions text et contour.

Il ya trois raisons d'utiliser les polices Hershey:

Polices Hershey peut produire un meilleur rendement
Polices Hershey fourni certains symboles qui peuvent ne pas être disponibles dans les polices standard.
Polices Hershey fourni des caractères cyrilliques et japonais (Kana et Kanji).

Pour plus d'informations peuvent être obtenues en utilisant les commandes R:

Code R :
 
help(Hershey)
demo(Hershey)
help(Japanese)
demo(Japanese)
 



<h2 class="formatter-title wiki-paragraph-2" id="paragraph-interagir-avec-les-graphiques">Interagir avec les graphiques</h2>

R fournit également des fonctions qui permettent aux utilisateurs d'extraire ou d'ajouter des informations sur un graphique à l'aide d'une souris. La plus simple d'entre elles est la fonction locator() :

locator(n, type)
Attend que l'utilisateur sélectionne des points sur le graphique actuel en utilisant le bouton gauche de la souris. Cela continue jusqu'à ce n (par défaut 512) points soient sélectionnés, ou un autre bouton de la souris soit appuyé. L'argument type permet de tracer au niveau des points sélectionnés. locator() retourne les emplacements des points choisis sous forme de liste avec deux composants x et y .

locator() est généralement appelé sans aucun argument. Il est particulièrement utile pour la sélection des positions, de manière interactive, pour les éléments graphiques tels que des légendes ou des étiquettes. Par exemple, pour placer du texte informatif à proximité d'un point, la commande:

Code R :
text(locator(1), "Outlier", adj=0)


pourrait être utile.


identify(x, y, labels)
Permet à l'utilisateur de mettre en évidence des points définis par x et y (en utilisant le bouton gauche de la souris) en mettant l’étiquette correspondante (labels) à proximité (ou le numéro d'indice du point, si labels est absent). Retourne les indices des points sélectionnés quand un autre bouton est appuyé.


<h2 class="formatter-title wiki-paragraph-2" id="paragraph-utilisation-des-parametres-graphiques">Utilisation des paramètres graphiques</h2>

Les paramètres graphiques permettent de personnaliser le graphique généré par R.


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-modification-permanente-des-parametres-graphiques">Modification permanente des paramètres graphiques</h3>


Pour changer de manière permanente les paramètres graphiques, on utilise la fonction par().

par()
Sans arguments, retourne la liste de tous les paramètres graphiques et de leurs valeurs pour le dispositif actuel.

par(c("col", "lty"))
Avec un vecteur de caractères en argument, renvoie uniquement les paramètres graphiques indiqués.

par(col=4, lty=2)
Avec des arguments indiqués, définit les valeurs des paramètres graphiques indiqués.

Pour pouvoir restaurer les paramètres graphiques par défaut après modification, il faut penser à enregistrer le résultat de par() lors des modifications. On peut alors les restaurer après.

Code R :
 oldpar <- par(col=4, lty=2)
       #... plotting commands ...#
 par(oldpar)



Pour enregistrer et restaurer tous les paramètres graphiques:

Code R :
oldpar <- par(no.readonly=TRUE)
       #... plotting commands ...#
 par(oldpar)




<h3 class="formatter-title wiki-paragraph-3" id="paragraph-les-modifications-temporaires-des-parametres-graphiques">Les modifications temporaires des paramètres graphiques</h3>

Les paramètres graphiques peuvent également être transmis à (presque) toutes les fonctions graphiques comme arguments. Cela a le même effet que le passage des arguments à la fonction par(), sauf que les changements ne durent que pendant la durée de l'appel de la fonction. Par exemple:

Code R :
plot(x, y, pch="+")


produit un nuage de points à l'aide d'un signe plus comme marqueur graphique, sans modifier le caractère par défaut de représentation pour de futurs graphiques.

<h2 class="formatter-title wiki-paragraph-2" id="paragraph-liste-des-parametres-graphiques">Liste des paramètres graphiques</h2>

Les sections suivantes détaillent un grand nombre des paramètres graphiques couramment utilisés. La documentation d'aide pour la fonction par() fournit un résumé plus concis.

Les paramètres graphiques seront présentés selon la forme suivante:

name = value
Une description de l'effet du paramètre. name est le nom du paramètre, qui est, le nom de l'argument à utiliser dans les appels à par() ou une fonction graphique. value est une valeur typique que vous pouvez utiliser pour définir le paramètre.


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-les-elements-graphiques">Les éléments graphiques</h3>

pch="+"
Caractère utilisé pour tracer des points.

pch=4
Lorsque pch est un nombre entier compris entre 0 et 25 (borne incluse), un symbole graphique spécial est produit. Pour voir ces symboles sont, utilisez la commande:

Code R :
legend(locator(1), as.character(0:25), pch = 0:25)


lty=2
Types de lignes. Le type 1 est toujours une ligne solide, le type 0 : type de ligne toujours invisible, et le type 2 : lignes en pointillés, en petit tiret ou les 2 à la fois.

col=2
Couleurs à utiliser pour les points, les lignes, du texte, les régions remplies et des images. Un numéro de la palette en cours (voir ?palette ) ou une couleur indiquée.


col.axis
col.lab
col.main
col.sub

La couleur à utiliser pour l'annotation des axes, les etiquettes x et y, le titre et les sous-titres, respectivement.

font=2
Un entier qui spécifie la police à utiliser pour le texte. 1 correspond à du texte brut, 2 à du texte en gras, 3 en italique, 4 en italique gras et 5 à une police de symbole (comprenant les lettres grecques).

font.axis
font.lab
font.main
font.sub

La police à utiliser pour l'annotation des axes, les étiquettes de x et y, le titre et les sous-titres, respectivement.


adj=-0.1

Justification du texte par rapport à la position ddu point. 0 signifie alignement à gauche, 1 signifie la justification à droite et 0.5 moyen de centrer horizontalement sur ​​le point.

cex=1.5
L'expansion des caractères. La valeur est la taille désirée de caractères de texte par rapport à la taille du texte par défaut.

cex.axis
cex.lab
cex.main
cex.sub

L'expansion des caractères à utiliser pour l'annotation des axes, les etiquettes de x et y, le titre et les sous-titres, respectivement.


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-axes-et-graduations">Axes et graduations</h3>

lab=c(5, 7, 12)
Les deux premiers nombres correspondent aux intervalles de graduation sur les axes x et y respectivement. Le troisième nombre est la longueur désirée des étiquettes des axes, en caractères (y compris le point décimal.) Choisir une valeur trop petite pour ce paramètre peut entraîner un arrondissement des étiquettes des graduation.

las=1
Orientation des étiquettes des axes. 0 désigne toujours parallèlement à l'axe, 1 désigne toujours horizontal, et 2 désigne toujours perpendiculairement à l'axe.

mgp=c(3, 1, 0)
Positions des composants des axes. Le premier composant est la distance (en ligne de texte) entre l'étiquette des axes et l'axe. La deuxième composante est la distance par rapport aux étiquettes de graduation, et le dernier élément est la distance entre la position de l'axe et la ligne de l'axe (habituellement zéro).

tck=0.01
Longueur des graduations, définit comme une fraction de taille de la région graphique. Utilisez tck=0.01 et mgp=c(1,-1.5,0) pour avoir des graduations internes.



xaxs="r"
yaxs="i"

Modèles d'axe pour les axes x et y, respectivement. Avec des styles "i" (interne) et "r" (la valeur par défaut) tique marques tombent toujours dans la plage des données, mais le style "r" laisse une petite quantité d'espace sur les bords. (S a d'autres styles non mises en œuvre dans l'arrêt R.)


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-marges-des-figures">Marges des figures</h3>

mai=c(1, 0.5, 0.5, 0)
Marge du bas, de la gauche, du haut et de la droite en pouche (inch)

mar=c(4, 2, 2, 1)
Pareil que mai sauf que l'unité de mesure est en ligne de texte.


<h3 class="formatter-title wiki-paragraph-3" id="paragraph-un-tableau-de-figures-multiples">Un tableau de figures multiples</h3>


R vous permet de créer un tableau de n par m figures sur une seule page.

mfcol=c(3, 2)
mfrow=c(2, 4)

Définit la taille du tableau de figures multiples. La première valeur est le nombre de lignes, le second est le nombre de colonnes. La seule différence entre ces deux paramètres est que mfcol rempli tle tableau de figure par colonne; mfrow remplit par ligne.

oma=c(2, 0, 3, 0)
omi=c(0, 0, 0.8, 0)

Taille des marges extérieures. Comme mar et mai , oma est en ligne de texte et omi en pouces.

Du texte peut être ajouté aux marges extérieures avec la fonction mtext() avec l'argument outer=TRUE.


Des arrangements plus complexes de figures multiples peuvent être produits par les fonctions split.screen() et layout().


<h2 class="formatter-title wiki-paragraph-2" id="paragraph-les-pilotes-graphiques">Les pilotes graphiques</h2>

Les pilotes périphériques sont démarrés en appelant une fonction du pilote périphérique.

X11()
Pour le système Unix

windows()
Pour Windows

quartz()
Pour Mac OS X

pdf()
Produit un fichier PDF

png()
Produit un fichier bitmap PNG.

jpeg()
Produit un fichier bitmap JPEG

Pour mettre fin au pilote :

Code R :
dev.off ()


Cela garantit que le dispositif se termine correctement.



Enjoyed this article? I’d be very grateful if you’d help it spread by emailing it to a friend, or sharing it on Twitter, Facebook or Linked In.

Show me some love with the like buttons below... Thank you and please don't forget to share and comment below!!
Avez vous aimé cet article? Je vous serais très reconnaissant si vous aidiez à sa diffusion en l'envoyant par courriel à un ami ou en le partageant sur Twitter, Facebook ou Linked In.

Montrez-moi un peu d'amour avec les like ci-dessous ... Merci et n'oubliez pas, s'il vous plaît, de partager et de commenter ci-dessous!





Cette page a été vue 67714 fois