Hi all, I have a pretty large graph G from which want to do the following: 1) Randomly select a node from G 2) Get the vertices that lie within radius 2 of the node 3) Extract the subgraph induced by those vertices My code for doing this is the following: / randnode = random.randint(0,G.num_vertices()) pred_map = gt.shortest_distance(G, source=G.vertex(randnode), max_dist=2, pred_map=True) pred_tree = gt.predecessor_tree(G, pred_map[1]) # DEBUG #print(pred_tree.num_vertices()) verts = pred_tree.vertices() vmap = G.new_vertex_property('bool') for i in verts: vmap[G.vertex_index[i]] = True / Then using vmap, I plan to do a GraphView on G and get the subgraph. But something is clearly going wrong here. If I uncomment the line under the # DEBUG comment, then I clearly see that pred_tree always has the same number of vertices as the original graph. Am I missing something about how predecessor_tree() works? I expected it to only return a subgraph of the original graph, which should have a lot fewer vertices... -- View this message in context: http://main-discussion-list-for-the-graph-tool-project.982480.n3.nabble.com/... Sent from the Main discussion list for the graph-tool project mailing list archive at Nabble.com.