NetworkX is a Python package for analyzing networks and graphs. It contains many algorithms for combinatorics, network analysis, and network flows. Networks and graphs consist of vertices/nodes which are singletons in the model and edges which are connections between vertices. NetworkX allows easy visualization of graphs using Matplotlib. An example graph analyzed with NetworkX is a network of political books and their frequent copurchasing by Amazon customers, with cliques identified as sets of books often bought together.