Hi, I am trying to label the components of an undirected graph after filtering, but it does not seem to work. Here is a simple example: ---------------------- from graph_tool.all import * Lx = 5 Ly = Lx g = lattice([Lx,Ly]) edges = list(g.edges()) g.remove_edge(edges[4]) g.remove_edge(edges[5]) g.remove_edge(edges[10]) g.remove_edge(edges[13]) g.remove_edge(edges[19]) g.remove_edge(edges[21]) g.remove_edge(edges[22]) g.remove_edge(edges[23]) g.remove_edge(edges[26]) g.remove_edge(edges[35]) g.remove_edge(edges[37]) lscc = label_largest_component(g) gaux = GraphView(g,vfilt=lscc) comp, hist = label_components(gaux) print comp.a ---------------------- The output of the last line is simply a vector containing 25 0's, as if none of the vertices belonged to the largest component, which is not the case, as it can be seen in the attached graph drawing. I found a workaround by creating a new graph and adding to it all the edges of the filtered graph. Was the original approach supposed to work and I am doing something silly? Cheers, Andre Vieira.