Modérateur : Groupe des modérateurs
Anthony Sturbois a écrit :J'ai pensé aussi à assigner une couleur au triangle en fonction de cet angle.
Moins visuel, mais l'info sera là
A suivre
Code : Tout sélectionner
polyg <- function(xcenter,ycenter,radius,angle,bg,fg,lwd=1,edges=3) {
angle <- angle*pi/180
theta <- ((0:(edges-1)))*2*pi/edges
centers <- cbind(xcenter,ycenter)
for (i in 1:nrow(centers)) {
x <- cos(theta+angle[i])*radius
y <- sin(theta+angle[i])*radius
polygon(centers[i,1]+x,centers[i,2]+y,border=fg,col=bg,lwd=lwd,density=-1)
}
}
df <- expand.grid(x=1:5, y=1:5)
plot(df$x,df$y,xlim=c(0,6),ylim=c(0,6), asp=1)
df$angle <- (1:nrow(df))*10 ## en degrés
polyg(df$x,df$y,radius=0.5,angle=df$angle,bg="yellow",fg="blue",lwd=1)
Code : Tout sélectionner
polyg <- function(xcenter,ycenter,radius,angle,bg,fg,lwd=1,edges=3,cex) {
angle <- angle*pi/180
theta <- ((0:(edges-1)))*2*pi/edges
centers <- cbind(xcenter,ycenter)
for (i in 1:nrow(centers)) {
x <- cos(theta+angle[i])*radius
y <- sin(theta+angle[i])*radius
polygon(centers[i,1]+x,centers[i,2]+y,border=fg,col=bg,lwd=lwd,density=-1,cex=cex)
}
}
Code : Tout sélectionner
Error in polygon(centers[i, 1] + x, centers[i, 2] + y, border = fg, col = bg, :
l'argument "cex" est manquant, avec aucune valeur par défaut
Code : Tout sélectionner
polyg <- function(xcenter,ycenter,radius,angle,bg,fg,lwd=1,edges=3) {
angle <- angle*pi/180
theta <- ((0:(edges-1)))*2*pi/edges
centers <- cbind(xcenter,ycenter)
if (length(radius)==1) radius <- rep(radius,nrow(centers))
for (i in 1:nrow(centers)) {
x <- cos(theta+angle[i])*radius[i]
y <- sin(theta+angle[i])*radius[i]
polygon(centers[i,1]+x,centers[i,2]+y,border=fg,col=bg,lwd=lwd,density=-1)
points(centers[i,1]+x[1],centers[i,2]+y[1],col="red",pch=16)
}
}
df <- expand.grid(x=1:5, y=1:5)
plot(df$x,df$y,xlim=c(0,6),ylim=c(0,6), asp=1)
df$angle <- (0:(nrow(df)-1)*10) ## en degrés
df$radius <- (1:nrow(df))/nrow(df)*0.4 + 0.1
polyg(df$x,df$y,radius=df$radius,angle=df$angle,bg="yellow",fg="blue",lwd=1)
Code : Tout sélectionner
plot(1:10, col="white")
for(i in 1:10) text(x=i, y=i, labels=">", srt=i*10, col=i)
for(i in 1:10) text(x=i, y=10-i, labels="\21", srt=i*10, col=i)
gtools::asc("\21") # 17, the 'dc1' ASCII symbol
Retourner vers « Questions en cours »
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité