NetworkX
NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. NetworkX is software released under a BSD licence.

Benefits
NetworkX is suitable for operation on large real-world graphs: e.g., graphs in excess of 10 million nodes and 100 million edges. Due to its dependence on a pure-Python “dictionary of dictionary” data structure, NetworkX is a reasonably efficient, very scalable, highly portable framework for network and social network analysis.
NetworkX is integrated into SageMath.
