понимание простой сетевой диаграммы - PullRequest
0 голосов
/ 18 июня 2019

Рассмотрим этот простой пример

mynodes_alt <- tibble(id = c(1,2,4,5),
                  mygroup = c(2,2,3,3))

myedges_alt <- tibble(from = c(1,1,4),
                  to = c(4,2,3),
                  power = c(3,3,3))

tbl_graph(nodes = mynodes_alt, edges = myedges_alt) 

# A tbl_graph: 4 nodes and 3 edges
#
# A rooted tree
#
# Node Data: 4 x 2 (active)
     id mygroup
  <dbl>   <dbl>
1     1       2
2     2       2
3     4       3
4     5       3
#
# Edge Data: 3 x 3
   from    to power
  <int> <int> <dbl>
1     1     4     3
2     1     2     3
3     4     3     3

Как видите, здесь только 3 ребра.Тем не менее, создание сети, а именно ggraph создает головоломную диаграмму.

tbl_graph(nodes = mynodes_alt, edges = myedges_alt) %>%  
  ggraph(layout = 'grid') + 
  geom_node_point(aes(color = factor(mygroup))) +
  geom_edge_arc(aes(alpha = power, label = power)) + 
  geom_node_text(aes(label = id), repel = TRUE) +
  theme_graph()

enter image description here

Что происходит?Откуда этот узел 5?Предполагается, что у него нет ребер.

Спасибо!

1 Ответ

0 голосов
/ 19 июня 2019

оказывается, что это не ошибка вообще!внутренне, узлы в tidygraph индексируются по порядку строк!Так что моя переменная ID вводит в заблуждение.

В граничных данных ссылка от 1 до 4 фактически означает ссылку от узла в первой строке к узлу в четвертой строке данные узла!

...