ExplodeLayout - Calculate Exploded Coordinates Based on Original Node
Coordinates and Node Clustering Membership
Current layout algorithms such as Kamada Kawai do not take
into consideration disjoint clusters in a network, often
resulting in a high overlap among the clusters, resulting in a
visual “hairball” that often is uninterpretable. The
ExplodeLayout algorithm takes as input (1) an edge list of a
unipartite or bipartite network, (2) node layout coordinates
(x, y) generated by a layout algorithm such as Kamada Kawai,
(3) node cluster membership generated from a clustering
algorithm such as modularity maximization, and (4) a radius to
enable the node clusters to be “exploded” to reduce their
overlap. The algorithm uses these inputs to generate new layout
coordinates of the nodes which “explodes” the clusters apart,
such that the edge lengths within the clusters are preserved,
while the edge lengths between clusters are recalculated. The
modified network layout with nodes and edges are displayed in
two dimensions. The user can experiment with different explode
radii to generate a layout which has sufficient separation of
clusters, while reducing the overall layout size of the
network. This package is a basic version of an earlier version
called [epl]<https://github.com/UTMB-DIVA-Lab/epl> that
searched for an optimal explode radius, and offered multiple
ways to separate clusters in a network (Bhavnani et al(2017)
<PMID: 28815099>). The example dataset is for a bipartite
network, but the algorithm can work also for unipartite
networks.