Encadrement des labels

From: Charline Laurent (Charline.Laurent@ifremer.fr)
Date: Fri May 28 2004 - 17:29:14 MEST


Bonjour,

Pour information et pour compléter le mail de Clément Calenge du 28 octobre
2003 concernant l'encadrement des labels :

Pour supprimer l'encadrement des labels des sorties graphiques des
fonctions s.label, s.class, s.chull, s.match , on peut modifier la fonction
"scatterutil.eti" de la façon suivante : il suffit de supprimer les lignes
de commande permettant de créer un rectangle autour des labels (lignes 18
et 19 de la fonction, "rect(...)" ) :

scatterutil.eti<-function (x, y, label, clabel, boxes = true, coul = rep(1,
length(x)))
{
     if (length(label) == 0)
         return(invisible())
     if (is.null(label))
         return(invisible())
     if (any(label == ""))
         return(invisible())
     for (i in 1:(length(x))) {
         cha <- as.character(label[i])
         cha <- paste(" ", cha, " ", sep = "")
         cex0 <- par("cex") * clabel
         x1 <- x[i]
         y1 <- y[i]
         if (boxes) {
             xh <- strwidth(cha, cex = cex0)
             yh <- strheight(cha, cex = cex0) * 5/3
             rect(x1 - xh/2, y1 - yh/2, x1 + xh/2, y1 + yh/2,
                 col = "white", border = coul[i])
         }
         text(x1, y1, cha, cex = cex0, col = coul[i])
     }
}

Cette ligne de commande permet également de changer la couleur des rectangles.
(Attention, il vaut peut-être mieux être prudent et créer une nouvelle
fonction R (appelée scatterutil.eti2 par exemple) qui permet de ne pas
afficher les rectangles, au lieu de modifier la fonction de base... il peut
être utile de mettre des jolis petits cadres autour des labels...)

Pour supprimer les cadres des fonctions s.corcircle et s.arrow, il faut
suivre les indications de Clément et modifier la fonction
"scatterutil.eti.circ" (cf. mail de Clément Calenge du 28 octobre 2003).

Charline LAURENT



This archive was generated by hypermail 2b30 : Tue Sep 07 2004 - 13:30:56 MEST