Maybe something like: g2 = ExampleData[{"NetworkGraph", "ZacharyKarateClub"}]; g2 = SetProperty[g2, {VertexLabels -> "Name", ImagePadding -> 20, ImageSize -> 400}]; fgp = FindGraphPartition[GraphComplement[g2], 3]; mpg = Graph[Flatten@fgp, EdgeList[g2], GraphLayout -> {"MultipartiteEmbedding", "VertexPartition" -> (Length /@ fgp)}, VertexLabels -> "Name", ImagePadding -> 20, ImageSize -> 400]; Row[{g2, mpg}] ![enter image description here][1] [1]: https://i.sstatic.net/IrgNC.png