KDEdge¶
The package provides image-based edge bundling algorithms that use kernel density estimation.
One edge bundling algorithm is currently supported:
bundle(mode="kdeeb"): kernel-density edge bundling
KDEEB¶
This algorithm is based on Graph Bundling by Kernel Density Estimation (2012) by Hurter, C., Ersoy, O. and Telea, A. The implementation is also inspired by the authors’ C# demo. See their website for more details: https://webspace.science.uu.nl/~telea001/InfoVis/KDEEB.
Implementation Details¶
This package was implemented with the goal of visualizing complete graphs with hundred-thousands of edges. The default parameters of the bundle() function and the numerical approximations of the density field and kernels were chosen for this use case, and may not be suitable for smaller graphs.
The kdeeb() function is a wrapper around the bundle() function with default parameters close to suggestions of the KDEEB paper.
Install¶
Python 3.10 or higher is required.
pip install kdedge
pip install scipy numba # optional for better performance
The core package depends only on NumPy which will be installed automatically. SciPy and Numba are optional and are used when installed. SciPy is used for Gaussian filtering and Numba is used for bilinear interpolation.