igraph can be used to generate graphs, compute centrality measures and path length based properties as well as graph components and graph motifs. It also can be used for degree-preserving randomization. igraph can read and write Pajek and GraphML files, as well as simple edge lists. The library contains several layout tools as well.
