如何使用igraph包从数据框架构建图形?

Mad*_*Seb 7 r igraph dataframe

有没有办法从R中的数据框构建图形(igraph包)?

数据框包含节点关系.

    df = data.frame ( 
A = c("Berlin", "Amsterdam", "New York") , 
B = c("Munich", "Utrecht", "Chicago") 
) 
Run Code Online (Sandbox Code Playgroud)

边缘是:

Berlin -> Munich
Amsteram -> Utrecht
New York -> Chicago
Run Code Online (Sandbox Code Playgroud)

aar*_*len 15

igraph非常灵活,我确信有很多方法可以实现这一目标.我发现网站上提供的教程非常有用.

这是从data.frame创建网络图的一种简单方法:

library(igraph)

df <- data.frame(
  A = c("Berlin", "Amsterdam", "New York") , 
  B = c("Munich", "Utrecht", "Chicago"))

df.g <- graph.data.frame(d = df, directed = FALSE)

plot(df.g, vertex.label = V(df.g)$name)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

注意:对于当前版本igraph(从版本1.2.1开始),该graph.data.frame()函数更改为graph_from_data_frame(),这是这两个函数中唯一出现在文档中的函数.但是,该graph.data.frame()功能仍然有效.