An R package implementing multiple edge bundling, flow map, and metro map layout algorithms for network visualization.
edgebundle is an R package that implements several edge bundling, flow map, and metro map layout algorithms for network visualization. It helps reduce visual clutter in dense graphs by grouping edges into curved bundles, making complex network structures more readable. The package includes methods like force-directed bundling, stub bundling, hammer bundling, and specialized algorithms for flow and metro map layouts.
R developers and data scientists working with network data who need to create clearer visualizations of dense graphs, particularly in fields like transportation, migration, or infrastructure mapping.
It consolidates multiple academic edge bundling algorithms into a single, accessible R package, offering a practical toolkit for experimenting with different visualization techniques without needing to implement them from scratch.
R package implementing edge bundling algorithms
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Consolidates multiple edge bundling, flow map, and metro map algorithms from academic papers into a single R package, offering force-directed, stub, hammer, and edge-path bundling as shown in the examples.
Returns data frames compatible with ggplot2 for plotting using geom_path or geom_bezier, making it easy to create publication-quality visualizations, as demonstrated in the README plots.
Includes benchmark datasets like US flights for testing and comparison, providing ready-to-use examples to evaluate different bundling techniques.
Emphasizes flexibility with configurable parameters, allowing users to tweak settings like compatibility_threshold or max_distortion to suit specific visualization needs.
The README explicitly warns that algorithms are 'very sensitive to parameter settings' and often only effective in showcase examples, requiring significant trial-and-error for real-world data.
With ggraph 2.2.0 introducing native edge bundling functions, parts of this package are deprecated, reducing its long-term utility and potentially causing compatibility issues.
Hammer bundling requires reticulate and a large Python library (datashader), adding installation complexity and dependency management overhead for R-only environments.
The metro map algorithm is described as 'not very stable' in the README, with parameters needing manual adjustment, making it unreliable for automated or critical schematic layouts.