Distance Backbone Toolbox #322
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New plugin or plugin update?
What is the purpose of this plugin?
This plugin allows you to compute the metric and ultrametric distance backbones defined in Simas et al 2021 [https://doi.org/10.1093/comnet/cnab021]. For larger networks, we recommend using the Python library distanceclosure [https://github.com/CASCI-lab/distanceclosure].
Those backbones are a parameter-free and algebraically-principles network sparsification methodologies which remove edges that break a generalized triangular inequality and, as a consequence, are redundant for shortest-path computations. Interestingly, the ultrametric backbone expands the concept of a minimum spanning tree to directed graphs and is itself a subgraph of the metric backbone for both directed and undirected networks.
How to test your plugin in Gephi?
Load a weighted graph (preferably graphml format) into Gephi, in which there is a variable labeled as "weight" that represents a notion of distance (smaller values are stronger associations).
Load the plug in, and this will create two buttons under the statistics tab: Metric Backbone, and Ultrametric Backbone. To test functionality, first press 'run' on the Metric Backbone button to compute the metric backbone, then press 'run' in the Ultrametric Backbone button to compute the ultrametric backbone.
Note: since the ultrametric backbone is a subgraph of the metric backbone you should compute the metric and then the ultrametric to test both. However, the opposite will lead to wrong results (the graph will not change).
Checklist before submission
master
branch to get the latest updates?pom.xml
file