Я не уверен, является ли это тривиальным или глупым вопросом, но мне было интересно, возможно ли создать объект igraph
, используя R
(или любое другое программное обеспечение) и начиная с матрицы смежности ребер. Например, я хотел бы воссоздать следующий график:
, просто указав матрицу смежности ребер с помощью матрицы:
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] 0 1 0 0 0
#> [2,] 1 0 1 1 0
#> [3,] 0 1 0 1 0
#> [4,] 0 1 1 0 1
#> [5,] 0 0 0 1 0
или список:
my_list <- list(
"1" = c(2),
"2" = c(1, 3, 4),
"3" = c(2, 4),
"4" = c(2, 3, 5),
"5" = c(4)
)
my_list
#> $`1`
#> [1] 2
#>
#> $`2`
#> [1] 1 3 4
#>
#> $`3`
#> [1] 2 4
#>
#> $`4`
#> [1] 2 3 5
#>
#> $`5`
#> [1] 4
Создан в 2020-03-03 пакетом представ. (v0.3.0)
. Я знаю, что функция igraph::graph_from_adj_list
работает только с использованием матрицы смежности вершин, т.е.
# packages
library(igraph)
my_list <- list(
"1" = c(2),
"2" = c(1, 3, 4),
"3" = c(2, 4),
"4" = c(2, 3, 5),
"5" = c(4)
)
my_list
#> $`1`
#> [1] 2
#>
#> $`2`
#> [1] 1 3 4
#>
#> $`3`
#> [1] 2 4
#>
#> $`4`
#> [1] 2 3 5
#>
#> $`5`
#> [1] 4
g <- graph_from_adj_list(my_list)
plot(g)
Создано в 2020-03-03 Представьте пакет (v0.3.0)
, что не то, что я хочу.