.. kdedge documentation master file, created by sphinx-quickstart on Wed Apr 8 22:58:25 2026. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. .. toctree:: :maxdepth: 2 :caption: Contents: KDEdge ~~~~~~ The package provides image-based edge bundling algorithms that use `kernel density estimation `_. `Github repository `_ 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. .. code-block:: shell 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. Functions ========= .. currentmodule:: kdedge .. autofunction:: bundle .. autofunction:: kdeeb .. autofunction:: exponential_schedule .. autofunction:: linear_schedule