Julia LightGraphs weakly_connected_components

A.Y*_*iha 1 directed-graph julia lightgraphs

julia LightGraphs中的weakly_connected_components是否应该提供连接组件,如果将DiGraph转换为无向图,那么每个组件应该连接?我试过这个,我没有收到这样的组件?作为一个例子,我在政治博客数据上尝试了这个作为无向网络

data=readdlm(path,',',Int64) #contains edges in each row
N_ = length(unique(vcat(data[:,1],data[:,2]))) ##to get number of vertices
network  = LightGraphs.DiGraph(N_)
#construct the network
for i in 1:size(data,1)
    add_edge!(network, Edge(data[i,1], data[i,2]))
end
#largest weakly connected component
net = weakly_connected_components(network)[1]
temp_net,vmap = induced_subgraph(network, net)
Run Code Online (Sandbox Code Playgroud)

在获得最大的弱连接组件后,我看到以下内容:

isempty([i for i in vertices(temp_net) if isempty(edges(temp_net).adj[i])])

julia>false
Run Code Online (Sandbox Code Playgroud)

签名一些节点没有传入或传出边缘.可能是什么问题?我使用的是最新版本6,但LightGraphs软件包测试似乎正在运行.

sbr*_*ger 5

除了@ dan-getz所说的,我必须恳请你不要访问任何结构的内部数据字段 - 我们拥有"公共"所有内容的访问器.具体而言,edges(temp_net).adj不保证可用.对于有向图和无向图,它目前与fadj(g)前向邻接列表相同g,但除了帮助保持边迭代状态之外,它不打算使用.

如果你使用.adj,你的代码会在某些时候没有任何警告而破坏你.