邻接列表中的图表

时间:2013-04-05 11:24:10

标签: r list graph adjacency-list

我有一个邻接列表,我希望将它们可视化并对其进行处理。有没有一个包有效地完成它。我看到有很多图表包,但他们之间感到困惑。有人可以帮我吗?

$`825`
[1] 824

$`824`
[1] 823

$`823`
[1] 822

$`822`
[1] 821

$`821`
[1] 820 777

$`820`
[1] 819 816 789 787 785 783

$`777`
[1] 776

以上是邻接清单。下面是我想要的图表。

825
 |
824
 |          _______ 783
823        /
 |        /________ 785
822      /
 |      /__________ 787
821 -- 820
 |      \__________ 789
777      \
 |        \________ 816
776        \
            \______ 819

感谢。

1 个答案:

答案 0 :(得分:5)

 mylist <- list(2,c(1,3),c(2,4),c(3,1))
 names(mylist) <- c(1,2,3,4)
 # just like your list

 #make it in the igraph format
 myadj <- stack(mylist)

#>    values ind
#>     1      2   1
#>     2      1   2
#>     3      3   2
#>     4      2   3
#>     5      4   3
#>     6      3   4
#>     7      1   4

 #plot it
 library(igraph)
 g<-graph.data.frame(myadj)
 plot(g)