Tutorial: How to Use Communalytic’s Built-in Network Visualizer

This tutorial will demonstrate how to use Communalytic’s built-in Network Visualizer. This feature allows you to visualize your dataset as an interactive network visualization inside your browser without installing a specialized program. It’s designed for networks with fewer than 100k edges. 

To illustrate this feature, we will show you how to visualize and examine a communication network of who replies to whom on Twitter. In particular, we will use a sample of tweets posted in response to the following tweet from Donald Trump posted on October 7th, 2020 (see Figure 1). In the tweet, Donald Trump shared a video message stating that he is feeling better after being diagnosed with COVID-19 and upon returning to the White House after being treated at The Walter Reed Army Medical Center. Within minutes, his tweet received thousands of replies on Twitter. 


Donald Trump’s tweet announcing his COVID-19 recovery [ref1, ref2]

Step 1: Access the Network Analysis

After collecting the dataset and performing the toxicity analysis, open your dataset and navigate to the “Network Analysis” on the left-hand corner of the browser. 

Step 2: Generate the Reply-to Network 

Next, choose the desired network and generate the network by clicking the “Generate Network” button in the center of the screen. From there, it will automatically generate a network representation of a given dataset.  

You will receive an email once the network has been generated. You can also watch the progress bar, which automatically refreshes every 30 seconds.  

Step 3: Launch the Network Visualizer

Once the network analysis is complete, click on the “Visualize Network” button. 

Next, the browser will automatically open the network visualization. In our case, each node represents a Twitter account, and connections between nodes represent who replies to whom. 

Step 4: Adjust display options in the Control Panel 

To help you examine the visualized network, the built-in visualizer includes the Control Panel on the top right-hand side of the screen allowing you to view network properties, select a network layout, and apply different node and edge filters. 

Network Properties 

The Network Properties tab shows the number of nodes and edges in the network. In this example, the network contains 554 nodes that are connected by 422 edges. This section also allows you to view node sizes based on degree centrality as well as provides details regarding the color of the nodes.

Note: Indegree centrality is a measure which indicates the number of replies sent to a node and when selected, the larger node sizes indicate large number of replies intaken. On the other hand outdegree centrality measures the number of replies made by the node to other nodes and when selected, the larger node sizes suggest large output of replies made by the node.


Network Layout 

The default layout used to visualize the network is called the SFDP spring-block layout. If the default layout produces a dense network visualization that is difficult to decipher, you can apply an additional layout called ForceAtlas2 to enhance the readability of the visualization by clicking on the “Run for 3 sec” button under the Network Layout tab in the Control panel. 

Community Clusters Filter 

We can use the Community Clusters filter, available under the “Node and Edge Filters” tab in the Control Panel, to examine conversations around densely-connected clusters of nodes in the network. Clusters are identified using the Greedy Modularity Maximization community detection algorithm. Nodes that belong to a particular cluster will have the same color assigned to them. 

By using the Community Clusters filter, we can select a specific cluster from the drop down menu which will hide nodes that do not belong to the selected cluster.  

For example, in our case, if we select Cluster 1, the network visualization will only show 1893 nodes that were automatically assigned to this cluster. We can see that most of the interactions in this cluster are around Donald Trump’s account. 

The second largest cluster in our example is around the @HKrassenstein account who has over 180k followers on Twitter. This cluster is much smaller than the first cluster and contains only 46 nodes.

Selecting a single node

Selecting a specific node in the network will highlight the user and their direct exchanges with others in the network. All other nodes will be hidden. (To go back to the previous view, click anywhere in the white space of the screen.)

For example, if we click on the central node in Cluster 2 – @HKrassenstein, we see under the “Posts” tab in the Control Panel that there were 45 replies directed to that user. Use the scroll bar to view all of the replies to the selected user (or replies posted by this user). In our case, the selected user has not replied to anyone else in the network. 

Locating corresponding edges

While scrolling through the posts from/to the selected users, you might want to identify where an edge that corresponds to a particular post is located in the network visualization. To do that, click on the post on the left-hand side of the panel and the corresponding edge will be bolded and highlighted using the orange color. 

Viewing the original post

To view how the selected post is displayed on the platform like Twitter where it was originally shared (if the post is still available), click on the blue arrow located beside the post, which will open a new window with the post as the platform presents it.

Degree Centrality Filter 

Another filter option available in the visualization is called “Min Degree”. This filter sets the minimum degree threshold, based on the total degree centrality, for nodes to be displayed in the network visualization. 

The total degree centrality is the sum of all incoming and outgoing connections to a node. Nodes with higher total degree centrality are more connected, more central and more influential in the network as a whole. 

You can set the min degree filter by sliding the blue dot to the right. Finding an ideal threshold is iterative; use your research questions to help you decide.

For example, here is how the network visualization looks if we only display nodes with the total degree centrality of 10 or higher.

As we increase the Min Degree value, it hides less connected nodes. By doing so, we can focus on the most connected nodes in the network, like Donald Trump’s account, in order to understand whether these accounts replied to many other well-connected accounts or if they are being contacted by influential others. 

Step 5: Analyze toxic interactions

Finally, if you have already performed the toxicity analysis with your dataset, you can use the “Min Toxicity” filter to see who contributes the most toxic interactions in the network and who might be on the receiving end of toxic messages from other users.  While the toxicity analysis calculates 8 different scores representing different attributes of toxicity, the “Min Toxicity” filter only controls values of the most general score called “toxicity”. Increasing the threshold value for the toxicity filter will hide interactions (represented as edges in the network) with toxicity scores less than the set threshold. 

We recommend testing different values to identify a suitable level for this threshold based on your research questions and the available dataset. In general, if your project aims to identify more severe cases of toxicity, then setting the threshold to 90 (out of 100) may be appropriate. But if your project is seeking to examine all possible antisocial acts, then you may consider casting a wider net by lowering the threshold to 70.

Step 6: Sentiment Analysis

Under the Node and Edge Filters tab, you can also find the sentiment analysis outcome. This section allows you to control the polarities for the interactions captured by the diagram for both the Textblob and Vader libraries. The filters display nodes and edges under the selected range (ranging from polarity values of -100 to 100).