Further Reading: Network and Graph Visualization
Tier 1: Essential Reading
NetworkX documentation. networkx.org The official NetworkX docs. Covers graph creation, algorithms, centrality, community detection, and the built-in drawing functions. Essential reference for anyone working with graphs in Python.
Barabási, Albert-László. Network Science. Cambridge University Press, 2016. The definitive textbook on network science, written by one of the field's founders. Covers degree distributions, small-world phenomena, scale-free networks, centrality, community detection, and more. Freely available online at networksciencebook.com.
Zachary, Wayne W. "An Information Flow Model for Conflict and Fission in Small Groups." Journal of Anthropological Research 33, no. 4 (1977): 452-473. The original paper introducing the karate club graph. Read alongside Case Study 1.
Tier 2: Recommended Specialized Sources
Newman, M. E. J. Networks: An Introduction. Oxford University Press, 2010. A rigorous, math-heavy introduction to network science. More technical than Barabási's book, better for readers with a mathematical background. Chapters on community detection, centrality, and graph algorithms are particularly valuable.
Watts, Duncan J. Six Degrees: The Science of a Connected Age. W.W. Norton, 2003. A popular-science introduction to the "small-world" phenomenon and early network science, by one of the field's founders. Less technical than Barabási or Newman, more narrative.
Butler, Paul. "Visualizing Friendships." Facebook Engineering Blog, December 13, 2010. The original blog post introducing the Facebook friendship map. Still available online through the Wayback Machine. Read alongside Case Study 2.
Heer, Jeffrey, Stuart K. Card, and James A. Landay. "prefuse: A Toolkit for Interactive Information Visualization." Proceedings of the 2005 SIGCHI Conference, 2005. An older but influential paper on interactive network visualization tools. Heer is the same researcher behind Vega/Vega-Lite (Chapter 22 Case Study 2); his earlier work on network visualization is part of the same research thread.
Fortunato, Santo. "Community Detection in Graphs." Physics Reports 486, no. 3-5 (2010): 75-174. A comprehensive review of community detection algorithms, covering modularity, spectral methods, clique percolation, and many others. Freely available through physics journals archives. Essential for anyone doing serious community detection.
Shneiderman, Ben, and Aleks Aris. "Network Visualization by Semantic Substrates." IEEE Transactions on Visualization and Computer Graphics 12, no. 5 (2006): 733-740. An influential paper on making large networks visible through semantic layouts (grouping by attribute). Useful for thinking about alternatives to force-directed layouts.
Tier 3: Tools and Online Resources
| Resource | URL / Source | Description |
|---|---|---|
| NetworkX tutorials | networkx.org/documentation/stable/tutorial.html | Official tutorials covering the main features. |
| pyvis | pyvis.readthedocs.io | Python wrapper for vis.js. The fastest path to an interactive network in Python. |
| Gephi | gephi.org | Free desktop application for exploratory network analysis and visualization. Export from NetworkX via GraphML or GEXF. |
| Cytoscape | cytoscape.org | Free desktop application originally for biological networks; general-purpose and widely used. |
| igraph (Python) | python.igraph.org | A C-backed graph library, much faster than NetworkX for large graphs. Alternative for projects beyond ~10,000 nodes. |
| SNAP (Stanford) | snap.stanford.edu/snap/ | The Stanford Network Analysis Platform, with C++ core and Python bindings. For massive networks. |
| Neo4j | neo4j.com | A graph database for storing and querying very large graphs. Often used with network visualization tools for enterprise scale. |
| Observable network examples | observablehq.com/collection/@d3/network | Beautiful D3-based network visualizations with source code. Inspiration for what is possible beyond Python. |
| Zachary's karate club on Wikipedia | en.wikipedia.org/wiki/Zachary%27s_karate_club | Background on the famous dataset and its history. |
| Facebook's engineering blog | engineering.fb.com | Occasional posts on large-scale graph analysis. Search for "social graph" or "graph visualization". |
A note on reading order: If you want one additional source, read Chapter 9 ("Communities") of Barabási's Network Science. It is freely available and covers the community detection material with accessible math and concrete examples. For a gentler introduction, Watts's Six Degrees is engaging and non-technical. For serious algorithmic work, Fortunato's review article is the standard reference on community detection methods.