Here is an example of how to rotate labels around a circle (see gist ):
library(igraph)
n <- 75
g <- erdos.renyi.game(n, 0.5)
V(g)$name = paste("long_name", 1:n, sep="_")
la <- layout.circle(g)
par(mar=c(8,6,6,6))
plot(g, layout=la, vertex.size=2, vertex.label="")
x = la[,1]*1.3
y = la[,2]*1.3
angle = ifelse(atan(-(la[,1]/la[,2]))*(180/pi) < 0,
90 + atan(- (la[,1]/la[,2]))*(180/pi), 270 + atan(-la[,1]/la[,2])*(180/pi))
for (i in 1:length(x)) {
text(x=x[i], y=y[i], labels=V(g)$name[i], adj=NULL,
pos=NULL, cex=.7, col="black", srt=angle[i], xpd=T)
}
source
share