Separating disjoint sub-Graphs
You can use WeaklyConnectedGraphComponents
on the input set edges
:
WeaklyConnectedComponents returns a list of components $\{c_1,c_2,\ldots\}$, where each component $c_i$ is given as a graph.
wcgc = WeaklyConnectedGraphComponents[edges]
Length@wcgc
63
Grid[Partition[SetProperty[#, VertexLabels -> "Name"] & /@ wcgc, 7], Dividers -> All]
Does this help?
G = Graph[edges
,AspectRatio->1
,ImageSize->700
,VertexLabels->Automatic
];
Subgraph[G, #, VertexLabels -> "Name"] & /@ WeaklyConnectedComponents[G]