Generic Edge Bundling

This algorithm bundles the edges of general undirected graphs to avoid visual cluttering.

Bundling together multiple edges means that their common parts are to some degree merged into a bundled part, which is a useful technique to increase the readability of straight-line graph drawings with a high number of edges that connect a comparably small number of nodes. It provides means to generate bundled edge paths for any given layout, i.e., the layout generated by another layout algorithm. To determine whether two edges can be bundled, the algorithm computes a compatibility measure that is composed of various criteria (e.g. edges that are closer together or have similar length are more compatible). Note that the algorithm ignores the edge bends and handles them all as straight-lines. Furthermore, it doesn’t prevent overlaps between nodes and edges.

Layout Options

Scope

Determines the set of edges that the router should process.

All Edges
Routes all edges in the graph
Selected Edges
Routes only the selected edges in the graph
Edges at Selected Nodes
Routes only the edges connected to selected nodes

Bundling Strength

The strength controls how tightly the edges are bundled and influences the shape of the curves of bundled edges. Low values lead to only slightly bundled edges; results will mostly show individual node-to-node connectivity information. High values show the connectivity on a higher level, strongly bundling edges together and generating highly curved edge paths.

Bundling Quality

Higher quality indicates that the bundling procedure uses more sophisticated methods to compute the actual bundles and the routing of the edges. On the other hand, a low quality indicates that runtime is more important than highly optimized bundling results, leading to, for example, more crossings between different bundles or completely straight-line un-bundled edges.

Maximal Duration

Specifies a preferred time limit (in seconds) for the layout algorithm. Note that restricting the maximal duration may reduce the overall layout quality. Furthermore, the actual runtime may exceed the maximal duration because the layout algorithm still has to find a valid solution.