Как добавить собственные циклы в ggraph? - PullRequest
0 голосов
/ 02 января 2019

Я пытаюсь провести сетевой анализ провинции происхождения учащихся и того, куда они идут в школу.Я использую ggraph.На графике не показаны самостоятельные циклы (т. Е. Учащиеся, которые посещают школу в провинции, откуда они родом).Как мне это добавить?Вот мой код:

routes_tidy <- tbl_graph(nodes = nodes, edges = edges, directed = FALSE)

ggraph(routes_tidy, layout = "linear") + 
geom_edge_arc(aes(width = weight), alpha = 0.6, fold = TRUE) +
scale_edge_width(range = c(0.2, 10))+
geom_node_text(aes(label = label), repel = FALSE)+
labs(edge_weight = "Letters")+
theme_graph()

1 Ответ

0 голосов
/ 12 мая 2019

Вы можете использовать geom_edge_loop, чтобы показать циклы на вашем графике. Смотрите код / ​​вывод ниже. Я создал несколько новых данных, поскольку они не были предоставлены.

library(tidyverse)
library(igraph)
library(ggraph)
library(tidygraph)

set.seed(123)
routes_tidy <- erdos.renyi.game(25, .05, loops = T)

V(routes_tidy)$name <- 1:vcount(routes_tidy)

ggraph(routes_tidy, layout = "linear") + 
  geom_edge_arc(alpha = 0.6, fold = TRUE) +
  geom_edge_loop()+ 
  geom_node_text(aes(label = name), repel = FALSE)+
  labs(edge_weight = "Letters")+
  theme_graph()+
  labs(caption  = 'Node 6 shows a self-loop.')

enter image description here

...