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.


Commandes graphiques de haut niveau




La fonction plot()




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.


Affichage de donn?es multivari?es





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.



Les arguments des fonctions graphiques de haut niveau




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.


Commandes graphiques de bas niveau



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).


Annotation math?matique



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)
 



Polices vectorielles d'Hershey




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)
 



Interagir avec les graphiques



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?.


Utilisation des param?tres graphiques



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


Modification permanente des param?tres graphiques




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)




Les modifications temporaires des param?tres graphiques



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.

Liste des param?tres graphiques



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.


Les ?l?ments graphiques



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.


Axes et graduations



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.)


Marges des figures



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.


Un tableau de figures multiples




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().


Les pilotes graphiques



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 25380 fois
Licence - Pas d?Utilisation Commerciale - Partage dans les M?mes Conditions
Licence Creative Commons