## Python

### graph-tool

Graph-tool is an efficient Python module for manipulation and statistical analysis of graphs. Contrary to most other Python modules with similar functionality, the core data structures and algorithms are implemented in C++, making extensive use of template metaprogramming, based heavily on the Boost Graph Library. This confers it a level of performance that is comparable (both in memory usage and computation time) to that of a pure C/C++ library.

### NetworKit

NetworKit is a growing open-source toolkit for large-scale network analysis. Its aim is to provide tools for the analysis of large networks in the size range from thousands to billions of edges. For this purpose, it implements efficient graph algorithms, many of them parallel to utilize multicore architectures.

### NetworkX

NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.

### textnets

textnets represents collections of texts as networks of documents and words. This provides novel possibilities for the visualization and analysis of texts.

### Raphtory

Raphtory is a Python package for the storage, modelling and analysis of temporal graphs/networks. It supports a very wide notion of temporal network including link-streams, edges with duration and sequences of network snapshots, complemented with an expressive API for analysing the graph over different times and timescales. Written with scalability to large networks in mind, its core engine is written in Rust to enable memory-efficient and fast computation but is wrapped in a Python module so that no Rust knowledge is required.

### netin

NetIn is a python package for network inference. It is based on the NetworkX package and provides a set of methods to study network inequalities. The package is growing andwill be updated regularly.

### XGI

The CompleX Group Interactions (XGI) library provides data structures and algorithms for modeling and analyzing complex systems with group (higher-order) interactions.

### CDlib

Community Detection Library (CDlib) is a python library that provides a set of reference implementations of community discovery algorithms for complex (static and dynamic) networks - along with evaluation and visualization tools.

### NDlib

Network Diffusion Library (NDlib) is a python library that provides a reference implementation of agent-based diffusion dynamics (Epidemics and Opinion Dynamics) on complex networks.

### DyNetX

DyNetX is a Python library for dynamic network analysis. It provides data structures and algorithms for modeling and analyzing dynamic network topologies (Stream and Snapshot Graphs).

## R

### statnet

The statnet project publishes a suite of open source R-based software packages for network analysis

### netrankr

Implements methods for centrality related analyses of networks. While the package includes the possibility to build more than 20 indices, its main focus lies on index-free assessment of centrality via partial rankings obtained by neighborhood-inclusion or positional dominance

### signnet

The package provides methods to analyse signed networks (i.e. networks with both positive and negative ties)

### netUtils

netUtils is a collection of tools for network analysis that may not deserve a package on their own and/or are missing from other network packages.

### rgraph6

Functions in this package allow for encoding network data as strings of printable ASCII characters and back using graph6, sparse6, and digraph6 formats

### backbone

An implementation of methods for extracting an unweighted unipartite graph (i.e. a backbone) from an unweighted unipartite graph, a weighted unipartite graph, the projection of an unweighted bipartite graph, or the projection of a weighted bipartite graph

### incidentally

Functions to generate incidence matrices and bipartite graphs that have (1) a fixed fill rate, (2) given marginal sums, (3) marginal sums that follow given distributions, or (4) represent bill sponsorships in the US Congress. It can also generate an incidence matrix from an adjacency matrix, or bipartite graph from a unipartite graph, via a social process mirroring team, group, or organization formation

### grand

Interactively applies the Guidelines for Reporting About Network Data (GRAND) to an igraph object, and generates a uniform narrative or tabular description of the object.

### manynet

manynet provides many fundamental tools for working with many (if not most) types, formats, and classes of networks. These include functions for making networks (e.g. importing existing data, generating various random graphs), modifying networks (e.g. reformatting, transforming, splitting, and joining), to easy mapping for visualising graphs with sensible and flexible default individually, comparatively, and dynamically.

### migraph

migraph builds on {manynet} to enable network analysis and modelling of multimodal, multilevel, and multilayer networks. It includes a range of measures that all work for one- and two-mode networks, their nodes and ties, algorithms for identifying motifs and community or equivalence memberships in them, and modelling one- and two-mode networks with multiple regression quadratic assignment procedure (MRQAP).

### goldfish

goldfish offers tools for applying statistical models to network/relational event data, time-stamped sequences of interactions or affiliations between actors or entities within a network. In addition to relational event models (REMs), the package includes rate, choice, and coordination processes for one- and two-mode dynamic network actor models (DyNAMs) and dynamic network actor models for interactions (DyNAMi).

### rsiena

rsiena performs simulation-based estimation of Stochastic Actor-oriented Models (SAOMs) for longitudinal network data collected as panel data (repeated observations of social networks on the same node set - minor changes of the node set are allowed). Dependent variables can be single or multivariate networks, which can be directed, non-directed, or two-mode; these can be combined with actor variables, which then leads to a "networks and behavior" study.

### MoNAn

MoNAn implements the method to analyse weighted mobility networks or distribution networks as outlined in: Block et al (2022, Social Networks). The purpose of the model is to analyse the structure of mobility, incorporating exogenous predictors pertaining to individuals and locations known from classical mobility analyses, as well as modelling emergent mobility patterns akin to structural patterns known from the statistical analysis of social networks.

### ERPM

ERPM extends exponential random graph models (ERGMs) for partitions, i.e. sets of non-overlapping groups, such as face-to-face interactions, animal herds, political coalitions, etc. This model can be used to explain cross-sectional or longitudinal observed partitions through group formation processes based on individual attributes, relations between individuals, and size-related factors.

## Multiplatform or standalone

### igraph

igraph is a collection of network analysis tools with the emphasis on efficiency, portability and ease of use. igraph is open source and free. igraph can be programmed in R, Python, Mathematica and C/C++.

### Gephi

Gephi is the leading visualization and exploration software for all kinds of graphs and networks.

### NodeXL

NodeXL makes it easy to explore, analyze and visualize network graphs in Microsoft Office Excel