¿Cómo controlar el diseño del diagrama de igraph con posiciones fijas?
Estoy tratando de dibujar una visualización de red para parecerse a un diagrama de flujo. Estoy bastante cerca del siguiente código, pero tengo un par de preguntas:
¿Es este el mejor algoritmo de diseño (), o puedo asignar manualmente una posición para cada nodo> ¿Cómo puedo asegurarme de que estos nodos no se superpongan en la trama (como lo hacen aquí)? ¿Puedo asignar un nodo como "ancla" o punto de partida? es decir, ¿puedo hacer que "C" sea el nodo más alto o más a la izquierda?¡¡Muchas gracias!
library("igraph")
L3 <- LETTERS[1:8]
d <- data.frame(start = sample(L3, 16, replace = T), end = sample(L3, 16, replace = T),
weight = c(20,40,20,30,50,60,20,30,20,40,20,30,50,60,20,30))
g <- graph.data.frame(d, directed = T)
V(g)$name
E(g)$weight
ideg <- degree(g, mode = "in", loops = F)
col=rainbow(12) # For edge colors
plot.igraph(g,
vertex.label = V(g)$name, vertex.label.color = "gray20",
vertex.size = ideg*25 + 40, vertex.size2 = 30,
vertex.color = "gray90", vertex.frame.color = "gray20",
vertex.shape = "rectangle",
edge.arrow.size=0.5, edge.color=col, edge.width = E(g)$weight / 10,
edge.curved = T,
layout = layout.reingold.tilford)