NetworkX:查找第二级节点

时间:2017-07-20 07:11:24

标签: python python-2.7 graph networkx

我有一个定向用户图G。我正在尝试创建一个函数,我可以在User级别返回n个节点。

def findNodes(node, level):
 return #nodes at this level

使用nx.bfs_successors(G,node)将所有后继者作为列表返回,该列表可占用大量节点的内存。

1 个答案:

答案 0 :(得分:0)

你知道nx.ego_graph,对吧?

 def find_nodes(graph, node, distance):

     # get all nodes within distance around the query node
     nodes = set(nx.ego_graph(graph, node, radius=distance))

     # remove nodes that are not **at** the specified distance but closer
     if distance > 1:
         nodes -= set(nx.ego_graph(graph, node, radius=distance-1))

     return list(nodes)