# Social network analysis software

Social network analysis (SNA) software is software which facilitates quantitative or qualitative analysis of social networks, by describing features of a network either through numerical or visual representation.

## Overview

Networks can consist of anything from families, project teams, classrooms, sports teams, legislatures, nation-states, disease vectors, membership on networking websites like Twitter or Facebook, or even the Internet. Networks can consist of direct linkages between nodes or indirect linkages based upon shared attributes, shared attendance at events, or common affiliations. Network features can be at the level of individual nodes, dyads, triads, ties and/or edges, or the entire network. For example, node-level features can include network phenomena such as betweenness and centrality, or individual attributes such as age, sex, or income. SNA software generates these features from raw network data formatted in an edgelist, adjacency list, or adjacency matrix (also called sociomatrix), often combined with (individual/node-level) attribute data. Though the majority of network analysis software uses a plain text ASCII data format, some software packages contain the capability to utilize relational databases to import and/or store network features.

## Features

Visual representations of social networks are important to understand network data and convey the result of the analysis. Visualization often also facilitates qualitative interpretation of network data. With respect to visualization, network analysis tools are used to change the layout, colors, size and other properties of the network representation.
Some SNA software can perform predictive analysis. This includes using network phenomena such as a tie to predict individual level outcomes (often called peer influence or contagion modeling), using individual-level phenomena to predict network outcomes such as the formation of a tie/edge (often called homophily models) or particular type of triad, or using network phenomena to predict other network phenomena, such as using a triad formation at time 0 to predict tie formation at time 1.

## Collection of social network analysis tools and libraries

| Product | Main Functionality | Input Format | Output Format | Platform | License and cost | Notes |
| Cytoscape | Network analysis and visualization software | .sif, .nnf, .gml, SBML, BioPAX, GraphML, Delimited text, .xls,. xlsx, Cytoscape.js JSON, Cytoscape CX | CX JSON / CX2 JSON, Cytoscapre.js JSON, GraphML, PSI-MI, XGMML, SIF | Windows, Linux, Mac | Open source | Cytoscape is a widely used open-source platform for visualizing and analyzing complex networks. It offers a user-friendly interface, extensive plugin support, and features for data integration and advanced analysis techniques. |
| Gephi | Graph exploration and manipulation software | GEXF, GDF, GML, GraphML, Pajek NET, GraphViz DOT, CSV, UCINET DL, Tulip TPL, Netdraw VNA, Spreadsheet | CSV, GDF, GEXF, GraphML, Pajek NET, Spreadsheet, PDF, SVG | Any system supporting Java 1.6 and OpenGL | Open source (GPL3), seeking contributors | Gephi is an interactive visualization and exploration platform for all kinds of networks and complex systems, dynamic and hierarchical graphs. It is a tool for people that have to explore and understand graphs. The user interacts with the representation, manipulate the structures, shapes and colors to reveal hidden properties. It uses a 3D render engine to display large networks in real-time and to speed up the exploration. A flexible and multi-task architecture brings new possibilities to work with complex data sets and produce valuable visual results. |
| Graphviz | Graph visualization software | GraphViz(.dot) | Multiple image formats. | Windows, Linux, Mac | Open source (CPL) | Graphviz is open-source graph visualization framework. It has several main graph layout programs suitable for social network visualization. |
| Network Overview Discovery Exploration for Excel (NodeXL) | Network analysis, content analysis and graph visualization software | xlsx (Excel 2010, 2013, 2016, 2019, 2021, 365), GDF, GEXF, Pajek, UCINet, GraphML | xlsx (Excel 2010, 2013, 2016, 2019, 2021, 365), csv, GDF, GEXF, Pajek, UCINet, GraphML, NodeXL Pro INSIGHTS, PowerPoint | Windows 10, 11 | NodeXL Basic is free, NodeXL Pro is a paid subscription | NodeXL is a (social) network analysis and visualization Add-in for Microsoft Excel written in C#. It integrates into Excel 2010, 2013, 2016, 2019, 2021, 365 and adds undirected and directed graphs as a chart type to the spreadsheet and calculates a core set of network metrics and scores. Supports data import from X (formerly Twitter), YouTube, Reddit, Wiki and Flickr social networks. Accepts edge lists and matrix representations of graphs. Allows for easy and automated manipulation and filtering of underlying data in spreadsheet format. Multiple network visualization layouts. Reads and writes Pajek, UCINet and GraphML files. |
| NetMiner | All-in-one Software for Network Analysis and Visualization | .xls(Excel),.xlsx (Excel 2007), .csv(text), .dl(UCINET), .net(Pajek), .dat(StOCNET), .gml; NMF(proprietary) | .xls(Excel),.xlsx (Excel 2007), .csv(text), .dl(UCINET), .net(Pajek), .dat(StOCNET), NMF(proprietary) | Windows | Commercial with free trial | NetMiner is a software tool for exploratory analysis and visualization of large network data. NetMiner 4 embed internal Python-based script engine which equipped with the automatic Script Generator for unskilled users. Then the users can operate NetMiner 4 with existing GUI or programmable script language. Analysis of large networks(+10,000,000 nodes), comprehensive network measures and models Both exploratory & confirmatory analysis Interactive visual analytics What-if network analysis Built-in statistical procedures and charts Full documentation(1,000+ pages of User's Manual) Expressive network data model Facilities for data & workflow management Python-based Script workbench and user-friendliness Morphological Analyzer for Semantic network analysis |
| Python | Social network analysis within the versatile and popular Python environment | Python will read in almost any format data file | Python has write capability for most data formats | Windows, Linux, Mac | Open source | Python contains several packages relevant for social network analysis: igraph is a library collection for creating and manipulating graphs and analyzing networks. It is written in C and also exists as Python and R packages; sna performs sociometric analysis of networks; network manipulates and displays network objects; Networkx is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks; Graph-tool is a python module for efficient analysis of graphs. Its core data structures and algorithms are implemented in C++, with heavy use of Template metaprogramming, based on the Boost Graph Library. It contains a comprehensive list of algorithms. |
| R | Social network analysis within the versatile and popular R environment | R will read in almost any format data file | R has write capability for most data formats | Windows, Linux, Mac | Open source | R contains several packages relevant for social network analysis: igraph is a library collection for creating and manipulating graphs and analyzing networks. It is written in C and also exists as Python and R packages; sna performs sociometric analysis of networks; network manipulates and displays network objects; PAFit can analyse the evolution of complex networks by estimating preferential attachment and node fitness; tnet performs analysis of weighted networks, two-mode networks, and longitudinal networks; ergm is a set of tools to analyze and simulate networks based on exponential random graph models exponential random graph models; Bergm provides tools for Bayesian analysis for exponential random graph models; hergm implements hierarchical exponential random graph models; RSiena allows the analyses of the evolution of social networks using dynamic actor-oriented models; latentnet has functions for network latent position and cluster models; degreenet provides tools for statistical modeling of network degree distributions; networksis provides tools for simulating bipartite networks with fixed marginals; multiplex offers tools for the analysis of multiple social networks with algebra; migraph provides tools for analysing multimodal and multilevel networks; netdiffuseR was designed for the analysis of network diffusion of innovations (and diffusion in general); bipartite provides functions to visualise and calculate indices used to describe bipartite graphs. It focuses on webs, i.e., ecological networks. |
| Tulip | Social Network Analysis tool | Tulip format (.tlp), GraphViz (.dot), GML, txt, adjacency matrix | .tlp, .gml, GraphVis format (.dot), GML, PNG / SVG / JPEG | Windows, Linux, Mac | Open source | Tulip is an information visualization framework dedicated to the analysis and visualization of relational data. Tulip aims to provide the developer with a complete library, supporting the design of interactive information visualization applications for relational data that can be tailored to the problems he or she is addressing. |