Tracer deux cercles (ou plus) avec ggplot2
Bonjour,
J'essaie de faire quelque chose de relativement basique, mais avec ggplot2 ça devient plus compliqué...
Je voudrais, sur le même graphique, tracer 2 cercles concentriques. Pour tracer des cercles, a priori, il faut utiliser la primitive geom_path.
Pour en tracer un, voici un code qui fonctionne :
Code:
1 2 3 4 5 6 7 8 9 10
| circleFun <- function(centre = c(0, 0), rayon = 25, npoints = 100){
tt <- seq(0, 2 * pi, length.out = npoints)
xx <- centre[1] + rayon * cos(tt)
yy <- centre[2] + rayon * sin(tt)
return(data.frame(x = xx, y = yy))
}
cercle2 <- circleFun(rayon = 2)
g <- ggplot() + geom_path(aes(x = x, y = y), data = cercle2)
g |
Pour tracer une deuxième cercle plus petit, j'essaie comme suit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
circleFun <- function(centre = c(0, 0), rayon = 25, npoints = 100){
tt <- seq(0, 2 * pi, length.out = npoints)
xx <- centre[1] + rayon * cos(tt)
yy <- centre[2] + rayon * sin(tt)
return(data.frame(x = xx, y = yy))
}
cercle2 <- circleFun(rayon = 2)
cercle1 <- circleFun(rayon = 1)
g <- ggplot() + geom_path(aes(x = x, y = y), data = cercle2)
+ geom_path(aes(x = x, y = y), data = cercle1) |
Et là, patatra ! Je prends une erreur :
Citation:
Error in +geom_path(aes(x = x, y = y), data = cercle1) :
argument incorrect pour un opérateur unitaire
Quelqu'un aurait-il une idée de ce qui bloque et de la manière de tracer ces deux cercles ?
Merci d'avance pour votre aide,
ced
Tracer deux cercles (ou plus) avec ggplot2
Bonjour,
Il faut juste mettre toute l'instruction sur la même ligne ou mettre le "+" à la fin de la première ligne et tout va bien.
Code:
1 2
| g <- ggplot() + geom_path(aes(x = x, y = y), data = cercle2) +
geom_path(aes(x = x, y = y), data = cercle1) |
Cordialement,