CONTRIBUTING.md | ||
README.md |
Awesome Network Analysis
An awesome list of resources to construct, analyze and visualize network data.
Inspired by Awesome Deep Learning, Awesome Math and others.
Table of Contents
- Books
- Conferences
- Courses
- Datasets
- Journals
- Professional groups
- Review Articles
- Software
- Tutorials
- Varia
- Contribution Guidelines
- License
Books
Classics
- A Novitiate in a Period of Change: An Experimental and Case Study of Social Relationships, by Samuel F. Sampson (unpublished PhD dissertation, 1968).
- Social Network Analysis. A Handbook, by John Scott (1991, 3rd ed. 2013).
- Social Network Analysis. Methods and Applications, by Stanley Wasserman and Katherine Faust (1994).
- The Structure and Dynamics of Networks, edited by Mark E.J. Newman, Albert-László Barabási and Duncan J. Watts - 600 pages of classic network analysis articles (2006).
Dissemination
Accessible introductions aimed at non-technical audiences.
- Linked: The New Science of Networks, by Albert-László Barabási - Selected chapters online (2002).
- Six Degrees: The Science of a Connected Age, by Duncan J. Watts (2003).
General Overviews
- Network Science, by Albert-László Barabási - Full book online (2016).
- Network Science, by the U.S. National Research Council - Full book online (2005).
- Network Science: Theory and Practice, by Ted G. Lewis (2011).
- Networks. An Introduction, by Mark E.J. Newman (2010).
- Networks, Crowds, and Markets: Reasoning About a Highly Connected World, by David Easley and Jon Kleinberg - Full pre-publication draft (review; 2010).
- Réseaux sociaux et structures relationnelles, by Emmanuel Lazega, in French (2014).
- The SAGE Handbook of Social Network Analysis, edited by John Scott and Peter J. Carrington (2011).
- Sociologie des réseaux sociaux, by Pierre Mercklé, in French (2011).
- Social and Economic Networks, by Matthew O. Jackson (2008).
- Social Network Analysis with Applications, by Ian McCulloh, Helen Armstrong and Anthony Johnson (2013).
- Social Networks: An Introduction, by Jeroen Bruggeman (related material; 2008).
- Studying Social Networks. A Guide to Empirical Research, by Marina Hennig et al. (2013).
Graph Theory
- Complex Graphs and Networks, by Fan Chung and Linyuan Lu (2006).
- The Fascinating World of Graph Theory, Arthur Benjamin, Gary Chartrand and Ping Zhang (2015).
- Graph Theory, by Reinhard Diestel - Full book online (2000).
- Random graph Dynamics, by Rick Durrett - Full book online (2007).
Method-specific
- Bayesian Networks in R with Applications in Systems Biology, by Radhakrishnan Nagarajan, Marco Scutari and Sophie Lèbre (website; 2013).
- Bayesian Networks with Examples in R, by Marco Scutari and Jean-Baptiste Denis (website; 2014).
- Exponential Random Graph Models for Social Networks, edited by Dean Lusher, Johan Koskinen and Garry Robins (2013).
- Handbook of Graph Drawing and Visualization, edited by Roberto Tamassia (2013).
- Handbuch Historische Netzwerkforschung. Grundlagen und Anwendungen, edited by Marten Düring et al., in German (2016).
- Knoten und Kanten. Soziale Netzwerkanalyse in Wirtschafts- und Migrationsforschung, edited by Markus Gamper and Linda Reschke, in German (2010).
- Knoten und Kanten 2.0. Soziale Netzwerkanalyse in Medienforschung und Kulturanthropologie, edited by Markus Gamper, Linda Reschke and Michael Schönhuth, in German (2012).
- Knoten und Kanten III. Soziale Netzwerkanalyse in Geschichts- und Politikforschung, edited by Markus Gamper, Linda Reschke and Marten Düring, in German and English (2015).
- Inferential Network Analysis, by Skyler J. Cranmer, Bruce A. Desmarais and Jason Morgan (forthcoming).
- Multilevel Network Analysis for the Social Sciences, edited by Emmanuel Lazega and Tom A.B. Snijders (2016).
- Network Analysis in Archaeology, edited by Carl Knappett (2013; review in French).
- Network Analysis: Methodological Foundations, edited by Ulrik Brandes and Thomas Erlebach - Covers network centrality, clustering, blockmodels, spatial networks and more (2005).
- Political Networks. The Structural Perspective, by David Knoke (1994).
- Social Network Analysis for Ego-Nets: Social Network Analysis for Actor-Centred Networks, by Nick Crossley et al. (2015).
Software-specific
- Analyzing Social Networks (using UCINET), by Stephen P. Borgatti, Martin G. Everett and Jeffrey C. Johnson (2013).
- Graph Drawing Software (covering many programs), edited by Michael Jünger and Petra Mutzel (2004).
- Introduction to Social Network Methods (using mostly UCINET), by Robert A. Hanneman and Mark Riddle - Full book online (2001).
- Network Analysis with R/igraph, by Gabor Csárdi, Thomas Nepusz and Eduardo M. Airoldi (in preparation).
- Network Analysis with Python/igraph, by Thomas Nepusz, Gabor Csárdi and Eduardo M. Airoldi (in preparation).
- Social Network Analysis for Startups. Finding Connections on the Social Web (using Python), by Maksim Tsvetovat and Alexander Kouznetsov (code; 2011).
- Statistical Analysis of Network Data with R, by Eric D. Kolaczyk and Gabor Csárdi (R package; 2014).
Topic-specific
- Comparing Policy Networks. Labor Politics in the U.S., Germany, and Japan, by David Knoke et al. (1996).
- The Connected Past. Challenges to Network Studies in Archaeology and History edited by Tom Brughmans, Anna Collar and Fiona Coward (2016; companion website).
- The Development of Social Network Analysis: A Study in the Sociology of Science, by Linton C. Freeman, in English and several other languages (2004; follow-up paper, 2011).
- Dynamical Processes on Complex Networks, by Alain Barrat, Marc Barthélemy and Alessandro Vespignani (2008).
- Encyclopedia of Social Networks, edited by George A. Barnett - Covers all sorts of network-related themes (many of them not formal) as well as social network analysis (2011).
- The Oxford Handbook of the Economics of Networks, edited by Yann Bramoullé, Andrea Galeotti and Brian Rogers (2016).
- Neighbor Networks. Competitive Advantage Local and Personal, by Ronald S. Burt (2010).
- Networks in Social Policy Problems, edited by Balázs Vedres and Marco Scotti (2012).
- Policy Debates as Dynamic Networks: German Pension Politics and Privatization Discourse, by Philip Leifeld (2016).
- Small Worlds: The Dynamics of Networks between Order and Randomness, by Duncan J. Watts (2003).
- Towards Relational Sociology, by Nick Crossley (2011).
- Die Verbundenheit der Dinge. Eine Kulturgeschichte der Netze und Netzwerke [The Connectedness of Things. A Cultural History of Nets and Networks], by Sebastian Gießmann, in German (2014).
- Verdeckte soziale Netzwerke im Nationalsozialismus. Die Entstehung und Arbeitsweise von Berliner Hilfsnetzwerken für verfolgte Juden [Hidden Social Networks in National Socialism: The origins and working methods of Berlin assistance networks for persecuted Jews], by Marten Düring, in German (2015; related publications and video presentation in English).
- Visualisierung komplexer Strukturen. Grundlagen der Darstellung mehrdimensionaler Netzwerke, by Lothar Krempel, in German.
Conferences
Recurring conferences on network analysis.
- SNAA - Workshop on Social Network Analysis in Applications.
- CNDay - Cambridge Networks Day - Convened by the Cambridge Networks Network.
- EUSN - European Conference on Social Networks.
- GD - International Symposium on Graph Drawing and Network Visualization.
- PolNet - Annual Political Networks Workshops and Conference - Organized by the APSA Organized Section on Political Networks.
- Videos from the Political Networks 2009 Conference.
- NetSci - International School and Conference on Social Networks - Organized by the Network Science Society.
- Sunbelt - Social Networks Conference of the International Network for Social Network Analysis (INSNA).
Courses
- CS 8803-NS: Network Science, by Constantine Dovrolis - Mostly open access readings (Georgia Tech, 2015).
- Complex Networks, by Peter Sheridan Dodds (University of Vermont, 2016).
- Graph Theory and Applications, by Paul Van Dooren - Full lecture slides (Hamilton Institute, Dublin, 2009).
- Graph Theory: Penn State Math 485 Lecture Notes, by Christopher Griffin - Full lecture notes (Penn State University, 2012).
- Network Analysis and Modeling (CSCI 5352), by Aaron Clauset - Full lecture slides and readings (University of Colorado, 2014).
- Networks, Complexity and Its Applications (Media Arts and Sciences), by Cesar Hidalgo (MIT, 2011).
- Networks, Crowds and Markets, by David Easley, Jon Kleinberg and Eva Tardos (presentation; Cornell University via edX, 2016).
- Networks (Economics), by Daron Acemoglu and Asu Ozdaglar (MIT, 2009).
- Network Science (Physics), by Albert-László Barabási, Sean Cornelius and Roberta Sinatra (Northeastern University, 2015).
- Political Networks: Methods and Applications, by Zeev Maoz (University of California in Davis, 2012).
- Social and Economic Networks: Models and Analysis, by Matthew O. Jackson (Stanford University via Coursera, 2015).
- Social Network Analysis, by Lada Adamic (University of Michigan via Coursera, not yet run).
- Social Network Analysis and Intermediate Social Network Theory, by Matthew J. Denny - Workshop notes and slides (2014–5).
- The Structure of Information Networks, by Jon Kleinberg - Links to many diverse readings (Cornell University, 2008).
Datasets
See also Mangal, an online platform and collection of tools to analyze, archive and share ecological network data (preprint, Python package, R package).
- Bayesian Network Repository.
- Bill Cosponsorship Networks in European Parliaments.
- Connectome - Comprehensive maps of neural connections.
- Enron Email Dataset.
- Eric D. Kolaczyk's Network Datasets.
- Gephi Datasets.
- igraphdata (R data-centric package).
- Interaction Web Database - Ecological species interactions.
- International Currencies 1890-1910 - Historical data on the international connections between 45 currencies.
- KONECT - The Koblenz Network Collection (companion handbook).
- James H. Fowler's Cosponsorship Network Data Page.
- Manlio De Domenico's Multilayer Networks.
- Mark E.J. Newman's Network Data (example visualizations).
- Pajek Datasets.
- Siena Datasets.
- Stanford Large Network Dataset Collection.
- tnet Datasets.
- UCI Network Data Repository.
Journals
Journals that are not fully open-access are marked as "gated". Please also note that some of the publishers listed below are deeply hurting scientific publishing.
- Applied Network Science (Springer Open).
- Computational and Mathematical Organization Theory (Springer, gated).
- Computational Social Networks (Springer Open).
- Connections (INSNA).
- Journal of Complex Networks (Oxford, gated).
- The Journal of Mathematical Sociology (Taylor & Francis, gated).
- Journal of Social Structure (INSNA).
- Network Science (Cambridge, gated).
- REDES. Revista hispana para el análisis de redes sociales, in Spanish (INSNA).
- Social Network Analysis and Mining (Springer, gated).
- Social Networks (Elsevier, gated).
Professional groups
- AFS RT 26 “Réseaux sociaux” - Thematic Network of the French Sociological Association, in French.
- ECPR Political Networks SG - Standing Group of the European Consortium for Political Research (Twitter account).
- GDR Analyse de réseaux en sciences humaines et sociales, in French.
- Groupe FMR - Flux, Matrices, Réseaux, in French.
- INSNA: International Network for Social Network Analysis (SOCNET mailing-list).
- Mathematical Sociology Section of the American Sociological Association (ASA).
- NetSci: Network Science Society.
- APSA Political Networks - Organized Section of the American Political Science Association.
Research Groups (USA)
Network-focused research centers, (reading) groups, institutes, labs – you name it – based in the USA.
- Annenberg Networks Network - Research group studying social networks at the University of Southern California.
- Channing Division of Network Medicine - Research division within the Department of Medicine at Brigham and Women's Hospital.
- Complex Human Networks Reading Group (CoHN) - Reading list from a seminar held at MIT in 2001–2.
- Interdependence in Governance and Policy Research Group - Led by Bruce A. Desmarais at Penn State University.
- Indiana University Network Science Institute (IUNI).
- Interdisciplinary Center for Network Science and Applications (iCeNSA) at the University of Notre Dame.
- LINKS Center for Social Network Analysis at the Gatton College of Business and Economics, University of Kentucky.
- NetSCI Lab at the Rutgers School of Communication and Information.
- Network Science Center at the U.S. Military Academy (USMA) in West Point (blog).
- Network Science IGERT at the University of California at Santa Barbara (UCSB) - Features an NSF-funded graduate programme.
- Networks, Computation, and Social Dynamics Lab - Headed by Carter T. Butts. Part of the Center for Networks and Relational Analysis (CNRA) at the University of California in Irvine.
- Northeastern University Network Science Institute - Features a PhD in Network Science program..
- Northeastern University Center for Complex Network Research - Led by Albert-László Barabási.
- Northeastern University MOBS Lab - Laboratory for the Modeling of Biological and Socio-technical Systems - Led by Alessandro Vespignani.
- Peter J. Mucha's Research Group at the University of North Carolina at Chapel Hill.
- Social Network Analysis Group @ Stanford.
- Warren Center for Network & Data Sciences at the University of Pennsylvania.
- Yale Institute for Network Science (YINS).
Research Groups (other)
Network-focused research centers, (reading) groups, institutes, labs – you name it – based outside of the USA.
- Cambridge Networks Network (CNN) - Research network on complex networks.
- Centre for Business Network Analysis, University of Greenwich - Focused on economic/organisational network analysis.
- Center for Network Science, Central European University, Budapest - Features a PhD in Network Science program.
- Cx-Nets - Virtual collaboration between four complex networks research groups.
- Forschungscluster der Universitäten Trier und Mainz "Gesellschaftliche Abhängigkeiten und soziale Netzwerke", in German.
- Historical Network Research (HNR) - Platform for scholars interested in network analysis for historical research.
- HNR Conferences, Workshops and Other Events.
- HNR Talks - Videos, in German.
- Large Graphs and Networks - Research group at the Catholic University of Louvain.
- MelNet Social Network Research Group, Swinburne University of Technology.
- Mitchell Centre for Social Network Analysis, University of Manchester - Currently studies covert networks.
- NetLab - Research network at the University of Toronto, led by Barry Wellman.
- Network Science Research Centre, Swansea University.
- Netzwerkerei - Historical research project on the connections between Jewish intellectuals.
- ORIO - Observatoire des Réseaux Intra- et Inter-Organisationnels - A research program on networks and regulation.
- ‘Réseaux et Régulation’ Conference Cycle - Seminar based at Sciences Po in Paris, France.
- Redes-Sociales, in Spanish - Information network based at the Universitat Autònoma de Barcelona.
- RES-HIST : Réseaux et histoire, in French - Blog posts from a research group on historical networks.
- RES-HIST Conferences.
- SocioPatterns - Interdisciplinary research group that uses wireless sensors to study social network data.
- SoNAR-C - Social Network Analysis Research Center, University of Italian Switzerland (USi).
- Topographies of Entanglements. Mapping Medieval Networks - Research platform based at the Austrian Academy of Sciences that focuses on applying network theory and visualisation to medieval history.
- UCL Centre for Organisational Network Analysis (CONA).
- Virtual Observatory for the Study of Online Networks (VOSON) - Research and software development project located at the Australian National University.
Review Articles
Archeological and Historical Networks
See also the bibliographies by Claire Lemercier and Claire Zalc (section on ‘études structurales’), by the Historical Network Research Group, and by Tom Brughmans.
- Analyse de réseaux et histoire, in French (Revue d'histoire moderne et contemporaine, 2005).
- Analyser les réseaux du passé en archéologie et en histoire, in French (Les Nouvelles de l'Archéologie, 2014).
- Formale Methoden der Netzwerkanalyse in den Geschichtswissenschaften: Warum und Wie? [Formal Network Methods in History: Why and How?], in German (preprint in English; Österreichische Zeitschrift für Geschichtswissenschaften, 2012).
- Graph Theory and Networks in Biology (preprint; IET Systems Biology, 2007).
- Introduction à la visualisation de données : l’analyse de réseau en histoire, in French (Geschichte und Informatik, 2015).
- Introduction : où en est l'analyse de réseaux en histoire ? [Introducción: ¿en qué punto se encuentra el análisis de redes en Historia?], in French (also in Spanish; REDES, 2011).
- Networks and History (Complexity, 2002).
- Networks of Power in Archaeology (Annual Review of Anthropology, 2014).
- Netzwerkanalyse in den Geschichtswissenschaften. Historische Netzwerkanalyse als Methode für die Erforschung von historischen Prozessen, in German (preprint; Prozesse. Formen, Dynamiken, Erklärungen, 2015).
- The Roots and Shoots of Archaeological Network Analysis: A Citation Analysis and Review of the Archaeological Use of Formal Network Methods (Archaeological Review from Cambridge, 2014).
- Thinking Through Networks: A Review of Formal Network Methods in Archaeology (Journal of Archaeological Method and Theory, 2013).
Biological, Ecological and Disease Networks
- Biological Networks (Handbook of Graph Drawing and Visualization, 2013).
- Interactome Networks and Human Disease (Cell, 2011).
- Network Biology: Understanding the Cell's Functional Organization - Accessible introduction to (cellular) network analysis (Nature Reviews Genetics, 2004).
- Network Medicine: A Network-based Approach to Human Disease (Nature Review Genetics, 2011).
Complex Networks
- The Architecture of Complexity - From network theory to complexity theory (IEEE Control Systems Magazine, 2007).
- Complex Systems and Networks (special issue of Science, 2009).
- Statistical Mechanics of Complex Networks (Reviews of Modern Physics, 2002).
- The Structure and Function of Complex Networks (SIAM Review, 2003).
Network Modeling
- Introduction to Stochastic Actor-Based Models for Network Dynamics (preprint; Social Networks, 2010).
- Navigating the Range of Statistical Tools for Inferential Network Analysis (American Journal of Political Science, forthcoming 2016).
- A Unified View of Generative Models for Networks: Models, Methods, Opportunities, and Challenges (video presentation; NIPS 2014 workshop on “Networks: From Graphs to Rich Data”).
- Statistical Models for Social Networks (Annual Review of Sociology, 2011).
Network Visualization
- Explorations Into the Visualization of Policy Networks (Journal of Theoretical Politics, 1999).
- Graphical Techniques for Exploring Social Network Data (Models and Methods in Social Network Analysis, 2005).
- Methods of Social Network Visualization (Encyclopedia of Complexity and Systems Science, 2009; poster version).
- Social Networks (Handbook of Graph Drawing and Visualization, 2013).
Economic, Political and Social Networks
See also the bibliography by Eszter Hargittai.
- Brokerage (Annual Review of Sociology, 2012).
- Birds of a Feather: Homophily in Social Networks (Annual Review of Sociology, 2001).
- Mixed-Method Approaches to Social Network Analysis (ESRC NCRM Discussion Paper, 2010).
- Network Analysis and Political Science (Annual Review of Political Science, 2011).
- Network Analysis in the Social Sciences (Science, 2009).
- Networks in the Understanding of Economic Behaviors (Journal of Economic Perspectives, 2014).
- Social Network Analysis in the Study of Terrorism and Political Violence (preprint; PS: Political Science and Politics, 2011).
Software
Several links in this section come from the NetWiki Shared Code page and from the Software for Social Network Analysis page by Mark Huisman and Marijtje A.J. van Duijn. For a recent academic review on the subject, see the Social Network Algorithms and Software entry of the International Encyclopedia of Social and Behavioral Sciences, 2nd edition (2015).
See also the Social Network Analysis Project Survey (blog post), an earlier attempt to chart social network analysis tools that links to many commercial platforms not included in this list, such as Detective.io. The Wikipedia English entry on Social Network Analysis Software also links to many commercial that are often very expensive, outdated, and far from being awesome by any reasonable standard.
Software-centric tutorials are listed below their program of choice: other tutorials are listed in the next section.
- ArcGIS Network Analyst - Network-based spatial analysis software for solving complex routing problems.
- Cytoscape - Cross-platform Java program to build, analyze and visualize networks. Also a JavaScript library.
- Network Analysis with Cytoscape Tutorial - Illustrated through an archaeological and geographical case study (2013).
- Discourse Network Analyzer (DNA) - Qualitative content analysis tool with network export facilities, written in Java with R integration.
- E-Net - Windows program for ego network analysis.
- Gephi - Cross-platform, free and open source tool for network visualization.
- Introduction to Network Analysis and Visualization with Gephi (2015).
- Practical Social Network Analysis With Gephi (2014).
- GLEAMviz Simulator - Cross-platform tool intended for the prediction of human epidemics.
- Graphviz - Cross-platform software to draw graphs in the DOT graph drawing language.
- Graphy - Graph theory library written in Ruby.
- Mathematica - Cross-platform program with graph theory and network analysis functionalities.
- MuxViz - Cross-platform, free and open source tool to study multilayer networks, based on R and GNU Octave.
- Neo4j - Open source, scalable graph database, used by companies like Linkurious.
- NodeXL - Free, open-source template to explore network graphs with Microsoft Excel.
- The NodeXL Series - Series of blog posts on using NodeXL (2013).
- ORA-LITE - Windows program for dynamic meta-network assessment and analysis.
- Pajek - Windows program for large network analysis, free for noncommercial use.
- Analyse des réseaux : une introduction à Pajek, in French (2011).
- La détection de communautés avec Pajek 3.6, in French (2012).
- txt2pajek: Creating Pajek Files from Text Files.
- P.I.G.A.L.E. - Public Implementation of a Graph Algorithm Library and Editor - Windows program and C++ library to analyze planar graphs.
- PNet - Simulation and estimation of (one-mode and multilevel) exponential random graph models (ERGMs), written in Java for Windows.
- Radatools - Set of tools intended for the analysis of complex networks, built on top of Radalib, a library written in Ada.
- Siena - Simulation Investigation for Empirical Network Analysis. Formerly a Windows program, now developed as the RSiena R package.
- StOCNET - Several Windows programs developed by the same team as Siena.
- SoNIA (Social Network Image Animator) - Tool to visualize dynamic or longitudinal network data. Formerly a Java program (example movies), now developed as the ndtv R package.
- Tulip - Cross-platform network analysis and visualization framework built on top of a C++ library, with plugins dedicated to specific biological and physical networks. Also available through its Python package.
- UCINET - Windows commercial software package for the analysis of social network data.
- Uberlink - Software suite for online (hyperlink) network analysis, by the VOSON research project.
- VOSON System - Web-based software for the collection and analysis of online network data.
- VOSON Data Provider for NodeXL (quick tutorial; to be discontinued in 2016).
- vosonR - R client for the VOSON software (in development).
- VennMaker: An Actor-Centered Interactive Network Mapping Tool - Cross-platform Java program for ego network analysis.
- VennMaker for Historians: Sources, Social Networks and Software (also available in Spanish; 2011).
- Visone - Cross-platform Java network analysis and visualization program, free for noncommercial use.
- Network Analysis with Visone Tutorial - Illustrated through an archaeological case study (2015).
- VOSviewer - Cross-platform Java tool for constructing and visualizing bibliometric networks.
Algorithms
Network placement and community detection algorithms that do not fit in any of the next subsections.
See also the Awesome Algorithms and Awesome Algorithm Visualization lists for more algorithmic awesomess.
- algo.graph - Basic graph theory algorithms written in Clojure.
- CONGA and CONGO - Algorithms to detect overlapping communities in networks, written in Java.
- ForceAtlas2 - Force-directed layout included in Gephi (paper).
- vbmod: Variational Bayesian Inference for Network Modularity - MATLAB and Python implementations of a Bayesian community detection algorithm.
- weighted-modularity-LPAwbPLUS - Julia, MATLAB and R implementations of two algorithms to find weighted modularity in bipartite networks.
C / C++
For more awesome C / C++ content, see the Awesome C and Awesome C / C++ lists.
- Benchmark Graphs to Test Community Detection Algorithms - C++ code to generate weighted and unweighted graphs.
- Boost Graph Library (BGL) - C++ library that provides a generic interface to access graph structures.
- igraph - C library of network analysis tools; also exists as packages for Python and R.
- Louvain Method - C++ code for the Louvain multi-level community detection algorithm.
- networks.tb - C program designed for analyzing socio-semantic networks. Runs on Linux and Mac OS X.
- OpenOrd: Large-scale Graph Layout (formerly DrL) - Written in C++. Also available as a Gephi plugin.
- Stanford Network Analysis Project - C++ general purpose network analysis and graph mining library. Available as a Python library and in Microsoft Excel via NodeXL.
- Walktrap - C++ program that implements the WalkTrap community detection algorithm.
JavaScript
For more awesome JavaScript libraries, see the Awesome JavaScript list.
- Cytoscape.js - Network analysis and visualization library.
- d3.js - JavaScript visualization library that can plot force-directed graphs.
- greuler - Visualization library to build and manipulate graphs through a simple API. Powered by d3.js and WebCola.
- jLouvain - Louvain community detection for Javascript (example).
- Sigma - JavaScript library dedicated to graph drawing.
- vis.js - JavaScript library with network visualization capabilities.
- VivaGraphJS - Graph drawing library (ForceAtlas2 plugin).
- viz.js - Use Graphviz in Web pages.
MATLAB
- CONTEST - Random network toolbox that implements nine network models.
- Generalized Louvain - A variant of the Louvain community detection algorithm.
- MatlabBGL - A graph library for Matlab, based on the Boost graph library.
- MATLAB RBN Toolbox - Simulation und visualization of Random Boolean Networks.
Python
Most items below are from a Google spreadsheet by Michał Bojanowski and others.
See also Social Network Analysis with Python, a 3-hour tutorial by Maksim Tsvetovat and Alex Kouznetsov given at PyCon US 2012 (code).
For more awesome Python packages, see the Awesome Python list.
- graph-tool - Python module for network manipulation and analysis, written mostly in C++ for speed.
- graphviz - Python renderer for the DOT graph drawing language.
- linkpred - Assess the likelihood of potential links in a future snapshot of a network.
- networkx - Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
- Implementing an ERGM From Scratch in Python, using networkx and numpy (2014).
- python-igraph - Python version of the igraph network analysis package.
- python-louvain - A solid implementation of Louvain community detection algorithm
- ipython notebook/jupyter - Literate programming applied to scientific computing python. It also can be used to show matlab/octave, R and other mathematical programming languages. Notebooks are also directly published as pages on github. That makes it an absolute tool to communicate works on the web.
R
For more awesome R resources, see the Awesome R and Awesome R Books lists. See also this Google spreadsheet by Ian McCulloh and others.
To convert many different network model results into tidy data frames, see the broom package. To convert many different network model results into LaTeX or HTML tables, see the texreg package.
- Bergm - Tools to analyse Bayesian exponential random graph models (BERGM).
- bipartite - functions to visualize bipartite networks and compute indices commonly used in ecological research.
- bnlearn - Tools for Bayesian network learning and inference (related Shiny app).
- btergm - Tools to fit temporal ERGMs by bootstrapped pseudolikelihood. Also provides MCMC maximum likelihood estimation, goodness of fit for ERGMs, TERGMs, and stochastic actor-oriented models (SAOMs), and tools for the micro-level interpretation of ERGMs and TERGMs.
- CCAS - A statistical model for communication networks.
- concoR - A translation of the CONCOR network blockmodeling algorithm (blog post).
- ContentStructure - implements an extension to the Topic-Partitioned Multinetwork Embeddings (TPME) model.
- DiagrammeR - Connects R, RStudio and JavaScript libraries to draw graph diagrams (blog post).
- ergm - Estimation of Exponential Random Graph Models (ERGM).
- ERGM: edgecov and dyadcov specifications.
- GERGM - Estimation and diagnosis of the convergence of Generalized Exponential Random Graph Models (GERGM).
- geomnet - A single-geometry approach to network visualization with ggplot2.
- ggnetwork - A multiple-geometries approach to plot network objects with ggplot2.
- ggraph - A grammar of graph graphics built in the spirit of ggplot2.
- hergm - Estimate and simulate hierarchical exponential-family random graph models (HERGM) with local dependence.
- igraph - A collection of network analysis tools.
- Network Analysis and Visualization with R and igraph (2016).
- influenceR - Compute various node centrality network measures by Burt, Borgatti and others.
- latentnet - Latent position and cluster models for network objects.
- lpNet - Linear programming model aimed at infering biological (signalling, gene) networks.
- networkD3 - D3 JavaScript network graphs from R.
- ndtv - Tools to construct animated visualizations of dynamic network data in various formats.
- network - Basic tools to manipulate relational data in R.
- networkdiffusion - Simulate and visualize basic epidemic diffusion in networks.
- networkDynamic - Support for dynamic, (inter)temporal networks.
- RCy3 - Interface between R and recent versions of Cytoscape.
- relevent - Tools to fit relational event models (REM).
- rem - Estimate endogenous network effects in event sequences and fit relational event models (REM), which measure how networks form and evolve over time.
- rgexf - Export network objects from R to GEXF for manipulation with software like Gephi or Sigma.
- Rgraphviz - Support for using the Graphviz library and its DOT graph drawing language from within R.
- RSiena - Simulation Investigation for Empirical Network Analysis; fits models to longitudinal network data.
- sna - Basic network measures and visualization tools.
- SocialMediaLab - Tools for collecting social media data and generating networks from it (companion website).
- spectralGOF - Compute the "spectral goodness of fit" (SGOF), a measure of how well a network model explains the structure of an observed network.
- spnet - Methods for dealing with spatial social networks.
- statnet - The project behind many R network analysis packages (mailing-list, wiki).
- Exponential Random Graph Models (ERGMs) Using statnet (2015).
- Guides for Using the statnet Package (2010).
- Modeling Valued Networks with statnet (2013).
- tergm - Fit, simulate and diagnose models for temporal exponential-family random graph models (TERGM).
- tnam - Tools to fit temporal and cross-sectional network autocorrelation models (TNAM).
- tnet - Network measures for weighted, two-mode and longitudinal networks.
- tsna - Tools for temporal social network analysis.
- visNetwork - Using vis.js library for network visualization.
- xergm - Extensions of exponential random graph models (ERGM, GERGM, TERGM, TNAM and REM).
Stata
- SNA with Stata - Blog documenting the use of the netplot Stata package.
Syntaxes
Generic graph syntaxes intended for use by several programs.
- DOT - Graph drawing syntax used by the Graphviz software.
- GEXF - File format used by the Gephi software.
- GraphML - Comprehensive and easy-to-use file format for graphs (handbook chapter).
- JGraphT - Java graph library for graph data structures and algorithms (example algorithms).
- JUNG — Java Universal Network/Graph Framework - Extensible library to represent network objects.
- PGF/TikZ - Tandem of vector graphics languages that can be used to draw graphs in the LaTeX typesetting environment.
- Awesome LaTeX: TiKZ.
- How to Draw Graphs in LaTeX?
- TikZ Graph Examples.
- TikZ & PGF Manual.
- TKZ - Packages based on TikZ.
- Tulip software graph format (TLP) - Graph syntax used by the Tulip software framework.
- Cypher A readable graph query language mostly used by neo4j
Tutorials
Tutorials that are not focused on a single specific software package or program.
- Static and Dynamic Network Visualization with R - Covers the igraph, network, networkD3 and ndtv packages (2015).
Varia
Resources that does not fit in other categories.
- Chains of Affection: The Structure of Adolescent Romantic and Sexual Networks - Classic example of a real-world sexual network.
- Cheat Sheet: Social Network Analysis for Humanists.
- The Convergence of Social and Technological Networks - About Internet-based small-world effects and social contagion.
- David Knoke on Network Analysis - A 20-minute interview that discusses the uses and benefits of network analysis, drawing upon Knoke's research on terrorist networks.
- Glossary of terms for statistical network models.
- Historical Network Research Bibliography - As it says on the box.
- Linton C. Freeman's Social Network Research Publications, spanning from 1955 to today.
- Mixed-Method Approaches to Social Network Analysis - Videos of a conference at the Middlesex University School of Law (2014).
- Modeling Complex Social Networks: Challenges and Opportunities for Statistical Learning and Inference - Video of a seminar talk by Jennifer Neville at Purdue University (2011).
- Network Fact - Twitter account about networks, graph theory, and related topics.
- New Perspectives for Relational Learning - Videos (and more) from a workshop at the Banff International Research Station (BIRS) (2015).
- The Performativity of Networks - Paper that connects network theory to the sociology of science.
- Picking Sides - Community detection in the political network of Middle Eastern alliances between various state and nonstate powers (updated version).
- Plan interactif du métro - Interactive visualization of the Paris metro network, drawn with d3.js, in French.
- Scale-Free Networks - Early, accessible formulation of the "networks are everywhere" argument.
- Should I do Social Network Analysis?.
- A Sociology Citation Network and A Co-citation Network for Philosophy - Examples of scientific co-citation networks.
- Tarot Cards for Principles of Complex Systems and Complex Networks - Part of a course by Peter Sheridan Dodds.
- The Ties that Divide: A Network Analysis of the International Monetary System, 1890–1910 and The Empirics of International Currencies: Network Externalities, History and Persistence - Network analysis of the foreign exchange system in the late 19th century (data).
- Using Metadata to Find Paul Revere and The Other Ride of Paul Revere: The Brokerage Role in the Making of the American Revolution - Network analysis applied to American revolutionaries.
- Visualizing Historical Networks - Historical network research projects at Harvard University.
- Angoulême in 1764.
- Economists in Cambridge.
- The Inner Life of Empires: An Eighteenth Century History.
Blog Series
Series of blog posts on network topics.
For more blog posts on manipulating networks with R, try searching for ‘networks’ or ‘social network analysis’ on the R-Bloggers R blogs aggregator.
- Archaeological Networks - Tom Brughmans’ blog, aimed at archaeologists and historians.
- Blog Posts About Network Analysis by Martin Grandjean, in English and French (mostly network visualizations; also try the ‘social networks’ tag).
- Blog Posts About Networks by Aaron Clauset.
- Blog Posts About Networks by Baptiste Coulmont, in French.
- Blog Posts About Networks by Cosma Shalizi.
- Blog Posts About Networks by François Briatte, in French.
- Blog Posts About Networks by Katya Ognyanova.
- Blog Posts About Networks by Pierre Mercklé, in French.
- Blog Posts About Networks on the Bad Hessian Blog, by various contributors.
- Cosma Shalizi's notebooks on network-related topics, definitely worth listing in (selective) detail:
- Analysis of Network Data.
- Assortative Social Networks and Neutral Cultural Evolution.
- Biochemical Network Evolution.
- Citations and Citation Networks.
- Community Discovery Methods for Complex Networks.
- Complex Networks.
- Experiments on Social Networks.
- Exponential Random Graph Models (ERGMs).
- Graph Sampling Algorithms.
- Graph Theory.
- Homophily and Influence in Social Networks.
- Inferring Networks from Non-Network Data.
- Joint Modeling of Texts and Networks.
- Network Comparison.
- Networks of Political Actors.
- Relational Learning.
- Social Contagion, Information Cascades, Diffusion of Innovations, Etc.
- Social Networks.
- Stochastic Block Models.
- Daniel Little's blog posts on the philosophy of social science:
- Networks Demystified, a series of blog posts by Scott B. Weingart.
- Netze und Netzwerke, in English and German - Blog on the history of network analysis, by Sebastian Gießmann (old blog).
- R / Notes: Networks - Blog posts focused on manipulating networks in R, by François Briatte.
- Under Roquentin's Chestnut Tree - Moses Boudourides' blog on analyzing (mostly) networks with Python.
Fictional Networks
Explorations of fictional character networks.
- Analyzing Networks of Characters in Love Actually - Features a cluster analysis and a Shiny app (using R + Shiny).
- Events in the Game of Thrones and Places in the Game of Thrones - Networked chronologies of character alliances, kills and travels in the book series, drawn with d3.js.
- Lessons on Exponential Random Graph Modeling from Grey's Anatomy hook-ups (using R).
- Network Analysis of Shakespeare's Macbeth (using Python).
- The Network and Trajectories of Transitions among Sentential Co-Occurrences of Characters of Arthur Conan Doyle's A Study in Scarlet (using Python; code).
- Network Visualization: Mapping Shakespeare's Tragedies.
- Star Wars Social Networks: The Force Awakens - Also an example of a social network analysis written in F#.
Network Science
Discussions of what "netsci" is about and means for other scientific disciplines.
- Editing a Normal Science Journal in Social Science - Reflections on the Social Networks journal by its founding editor.
- The Emergence of Network Science - Video documentary, featuring Steven Strogatz and many others.
- From Albert-László Barabási's review articles:
- Taming Complexity.
- The Network Takeover.
- Isolated Social Networkers, Networks and Netwars and The inter-disciplinary politics of interdisciplinary research or, "Hey, that was my idea first." - Series of blog posts that predate the advent of "network science" as a buzzword, but that touch upon the same issues as those now being discussed under that heading.
- Predicting Highly Cited Papers - Prediction of the next highly cited papers in network science.
- Social Network and Network Science Co-Citations Across Disciplines in 1996-2013.
- Three Hard Questions about Network Science.
- What is Network Science? - First editorial of the recent Network Science journal.
Small Worlds
Links focused on (analogues to) Stanley Milgram's small-world experiment.
- The Erdös Number Project - Research project on the collaborative ties and network distance between mathematicians.
- How Small is the World, Really? - Discussion of "x degrees of separation" small-world experiments.
- The Oracle of Bacon - Based on an online game that resulted in a charity.
- Panel: Six Degrees of Separation - Video of a conference at Cornell University, featuring Duncan Watts, Steven Strogatz, Jon Kleinberg and other speakers.
- Patterns in the Ivy: The Small World of Metal - Example of a two-mode network analysis based on metal artists and bands.
- Six Degrees of Francis Bacon - Interactive visualization of a well-documented early modern historical network.
- Six Degrees of Separation - Wikipedia English entry.
Two-Mode Networks
Also known as bipartite graphs.
- Basic Notions for the Analysis of Large Two-mode Networks (preprint, related code; Social Networks, 2008).
- L'analyse des graphes bipartis, in French (2013).
- Working with Bipartite/Affiliation Network Data in R (2012).
License
To the extent possible under law, the authors of this list – by chronological order: François Briatte, Ian McCulloh, Aditya Khanna, Manlio De Domenico, Patrick Kaminski, Ericka Menchen-Trevino – have waived all copyright and related or neighboring rights to this work.
Thanks to Marc Flandreau for his help with locating some of the awesome resources featured in this list.