Year: 2023
Type: article
Abstract: The empirical study and scholarly analysis of networks have increased manifold in recent decades, fuelled by the new prominence of network structures in our lives (the web, social networks, artificial neural networks, ecological networks, etc.) and the data available on them.While there are several comprehensive Python libraries for network analysis such as NetworkX (Hagberg et al., 2008), igraph (Csardi & Nepusz, 2006), and graph-tool (Peixoto, 2014), their inbuilt visualisation capabilities lag behind specialised software solutions such as Graphviz (Ellson et al., 2002), Cytoscape (Shannon et al., 2003), and Gephi (Bastian et al., 2009).However, although Python bindings for these applications exist in the form of PyGraphviz, py4cytoscape, and GephiStreamer, respectively, their outputs are not manipulable Python objects, which restricts customisation, limits their extensibility, and prevents a seamless integration within a wider Python application. SummaryNetgraph is a Python library that aims to complement the existing network analysis libraries with publication-quality visualisations within the Python ecosystem.To facilitate a seamless integration, Netgraph supports a variety of input formats, including NetworkX, igraph, and graph-tool Graph objects.At the time of writing, Netgraph provides the following node layout algorithms:
DOI: 10.21105/joss.05372
Author: Paul J. N. Brodersen
Institution: University of Oxford
Language: English
Subfield: Statistical and Nonlinear Physics
Field: Physics and Astronomy
Domain: Physical Sciences
Open Access status: diamond
OpenAlex ID: W4384821346
