Skip to content

Introduction

What is Social Network Analysis?

A Social Network is the social structure that facilitates communication between a group of actors (individuals or organizations) that are related somehow (i.e., by common interests, shared values, financial exchanges, friendship, dislike, etc).

For instance, your friends and you form a social network.
But social networks operate on many more levels, from family relations and disease spreading up to the level of company strategies, social movements, or even nations.

Furthermore, research in many scientific areas has shown that social networks are important when studying how problems are solved, diseases are spread, organizations are run, and the degree to which individuals succeed in achieving their goals.

Social Network Analysis (SNA) is a beautiful blend of Sociology and Mathematics, composed of various interdisciplinary techniques for studying such social networks.

SNA researchers conceptualize social relationships in terms of nodes and edges (links) in mathematical graphs.

  • Nodes represent the individual actors within the networks.
  • Edges visualize the relationships between those actors.

The result is graph-based structures, often complex to understand and analyze. This is where applications like SocNetV are needed.

graph LR A[Actor 1] --> B[Actor 2] A[Actor 1] --> C[Actor 3] B[Actor 2] --> D[Actor 4] C[Actor 3] --> D[Actor 4] C[Actor 3] --> E[Actor 5] D[Actor 4] --> F[Actor 6] E[Actor 5] --> F[Actor 6] E[Actor 5] --> G[Actor 7] F[Actor 6] --> H[Actor 8] G[Actor 7] --> I[Actor 9] H[Actor 8] --> I[Actor 9] I[Actor 9] --> J[Actor 10] G[Actor 7] --> J[Actor 10] A[Actor 1] --> F[Actor 6] B[Actor 2] --> G[Actor 7] D[Actor 4] --> H[Actor 8]

What is SocNetV?

Social Network Visualizer (SocNetV) is an open-source project to build a flexible and user-friendly, cross-platform tool for social network analysis and visualization, targeting primarily the social researcher. It is developed in C++ and Qt, an open-source development toolkit, and runs on Linux, macOS, and Windows.

SocNetV supports the creation and analysis of multirelational networks in the GraphML format. This capability allows users to define and visualize multiple types of relationships (edges) between nodes within the same network. Each relation is stored as a distinct layer, making it easy to switch between, analyze, and compare different relationship types. This multirelational support is particularly useful for complex datasets, such as networks involving family ties, professional connections, or transactional links, all within a single unified GraphML file.

Features of SocNetV


Example Network Visualization

SocNetV loaded with a 65-actor network visualized in FDP layout. Actors' colors and sizes denote their Eigenvector centrality.

SocNetV loaded with a 65-actor network visualized in FDP layout. Actors’ colors and sizes denote their Eigenvector centrality.


License

SocNetV is Free Software licensed under the GNU General Public License 3 (GPL3). You can copy it as many times as you wish or modify it, provided you keep the same license. The documentation is also Free, licensed under the Free Documentation License (FDL).


Installation Instructions

SocNetV is multi-platform, which means that it can be installed and run in every Operating System supported by the Qt toolkit.

In fact, the project offers binaries and installers for the three major Operating Systems:

  • Windows,
  • macOS
  • Linux

The latest release of SocNetV can be downloaded from the project’s Downloads page.

If there is no binary package for your OS, please download and compile the source code as explained below.

Install in Windows

To install SocNetV in Windows, download the latest SocNetV Windows installer from the Downloads page, and double-click on the executable to start the installation.

Click Next and Accept the License (GPL) to install the program.

The program will be installed in the usual Windows Program Files directory and a new Start Menu shortcut will be created.

Afterwards you can run the application from your Start menu.

Install in macOS

To install SocNetV in macOS, download the latest SocNetV macOS package from the Downloads page. Then right-click on it and select Open.

The package is just a macOS image disk (a file with a .dmg extension). Double-click on it to open it. You will see a new window with the SocNetV executable icon inside. Right-click on it and select Open to run the application.

After that, in order to permanently install SocNetV in your macOS, you can simply drag the SocNetV executable icon into your Applications.

Alternatively, there is a SocNetV port in MacPorts (thanks to Szabolcs Horvát!). It can be installed with the command:

Terminal window
port install socnetv

Install in Linux

To run the latest and greatest version of SocNetV in Linux, download the latest Linux AppImage from the Downloads page.

Then, make the .appimage file executable and double-click on it to run SocNetV. That’s it. :)

Note that AppImages require libfuse2 to work. On some recent Ubuntu releases this dependency is provided by the libfuse2t64 package:

Terminal window
sudo apt install libfuse2t64

Ubuntu (PPA)

In Ubuntu, you can add our own PPA and install SocNetV from there, using the commands:

Terminal window
sudo apt remove socnetv
sudo add-apt-repository ppa:dimitris-kalamaras/ppa
sudo apt update
sudo apt install socnetv
  • PPA builds currently target Ubuntu 22.04 LTS (Jammy) and 24.04 LTS (Noble).

openSUSE and Fedore (OBS)

Users of Fedora and openSUSE can install the rpm package of SocNetV via our OBS repositories. Go to https://software.opensuse.org/download.html?project=home%3Aoxy86&package=socnetv and select your distribution.


Development Version

To test the latest development version of SocNetV, download the CI/CD binaries from the continuous tag in our GH releases:

Get the development binaries

Alternatively, you can clone the development branch (called “develop”) of the SocNetV code on your computer with this git command:

Terminal window
git clone -b develop --single-branch https://github.com/socnetv/app.git socnetv

A new directory called socnetv will be created.

Make sure you have CMake and Qt 6 development libraries installed on your system.

Then, you can compile the code with the following commands:

Terminal window
cd socnetv
mkdir build
cd build
cmake ..
make

Command line options

If you run the SocNetV GUI application from the command prompt, the following options are available:

--version | -V Displays the version of the program.

--help | -H Displays a short help message.

file.net The name of the file you want to open.

socnetv-cli (Headless Mode)

SocNetV also includes a headless command-line regression tool called socnetv-cli.
It is used primarily for automated testing, deterministic metric validation, and performance benchmarking.

See the dedicated socnetv-cli manual page for full usage, kernel reference, and automation scripts.