PercoVIS is a tool for visualizing percolation on networks.
A common formulation of percolation on networks considers a collection of intially isolated nodes. Over time, links are introduced which connect the nodes. The links can be added randomly or according to various schemes. Many interesting research questions are focused on the ways in which a well-connected network emerges over time. PercoVIS tries to make the network percolation process more intuitive by providing a nice way to view percolation as it happens. The rest of this page is devoted to PercoVIS and its use, but you can read more about my research and download my papers on my home page.
| Downloads | ||
PercoVIS for Mac OS |
Linux (not available) |
Windows (not available) |
![]() PercoVIS by Daniel B. Larremore is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. |
||
To be as intuitive as possible, nodes are depicted as circles and links as lines. Node colors correspond to the size of clusters. For example, disconnected nodes are grey, while nodes that are members of clusters of size four are red. Within each cluster, the node with the largest degree (number of links) is shaded slightly lighter than the others. The Giant Component (GC) has its nodes slightly enlarged so that it stands out more in the diagram. In the screenshot above, the GC is white, and you can see that its nodes are larger. For better visualization, the most recently added link is bold green, while the other links are thin white. Clusters of size greater than 11 are all colored white.
Information about the total number of links added, the size of the GC, and the rule that will govern the addition of the next links are shown in the corners. This information can be enabled or disabled in the upper right panel - The Controls.
To achieve a nice display, nodes are cast as point charges which repel each other. A circular boundary is also charged to keep the nodes in a circular corral. Nodes are not allowed to leave the screen. Links are cast as linear springs. Each node also experiences drag proportional to its velocity. Therefore, nodes want to spread themselves evenly throughout the circle, but nodes of the same cluster stick together. The drag insures that the system stops jiggling around, though you may adjust the strength of the drag or "fluid thickness" in the upper right panel - The Controls.
You may use the mouse to click and drag nodes around the display. This is useful for separating clusters visually, but does not affect the percolation process itself.
Since the Giant Component (GC) changes in size as more links are added, many analyses focus on a plot like the one shown in this panel. To avoid rescaling the plot each time the number of nodes changes, the axes are scaled by the number of nodes. This is both a common practice in publication as well as a tip of the hat to a common type of question people ask about network percolation: "What happens when the number of nodes grows extremely large, say one million, one billion, or beyond?" By plotting things relative to the total number of nodes, we can get a grasp on how the GC scales with the number of links added (also relative to the number of nodes). Because of these conventions, the horizontal and vertical axes only plot up to one. You can continue to see the percolation for more links, but the plot stops plotting for Links/N > 1.
Percolation Rule allows you to change the rule by which new links are selected and added to the network. The options are "Erdos-Renyi (Random)," "Adjacent Edge," and "Product Rule." Adjacent Edge chooses two potential links emanating from the same node, creates the link which connects to a smaller cluster, and discards the link which would have connected to a larger cluster. This is one method of achieve the so-called "explosive percolation." Product Rule chooses two potential links between any two pairs of nodes, computes the products of the sizes of each pair of clusters, creates the link corresponding to the smaller product, and discards the other link. This is another method of achieving explosive percolation.
Show PR link toggles the visibility of the discarded link of the Product Rule. This option only appears if the Percolation rule is set to Product Rule.
# Links to add allows you to change the number of links that get added each time you add links.
Add Link(s) adds the number of links selected in the # Links to add drop-down menu.
Fluid thickness changes the magnitude of the drag on the nodes in the left panel. The thinnest setting will let the nodes jiggle and bounce considerably and the thickest setting will give the nodes the feel of being in a thick molasses.
Display info. toggles whether or not the text information is displayed in the left panel.
Jiggle Display perturbs the locations of each node randomly in X and Y directions. This can be useful if all the clusters are "tangled." This works nicely to untangle if the fluid thickness is thinner.
New Percolation will erase all the current data and start from scratch using the number of nodes in the adjacent pull-down menu.
with 150 nodes sets the number of nodes that will be created for a new percolation if the new percolation button is clicked. Currently, the options are 50, 100, 150, 250, and 500 nodes. More than 500 nodes produces a bit of graphic lag on some systems, since the interactions of the nodes need to be calculated for all the nodes. The display also looks very crowded for larger numbers of nodes.
Quit does what you think it does, but...why would you want to?