Greadability.js: Graph Readability Library
I developed an open source library to calculate graph layout quality metrics to help me evaluate graph layout algorithm research (see d3-force-reuse and d3-force-sampled). The metrics are useful for automatically estimating which layout is better, but I also showed a proof of concept using them to automatically find higher quality layouts.
I included four global graph readability metrics, although it could be extended to include additional metrics:
- Edge crossings measures the fraction of edges that cross (intersect) out of an approximate maximum number that can cross.
- Edge crossing angle measures the mean deviation of edge crossing angles from the ideal edge crossing angle (70 degrees).
- Angular resolution (minimum) measures the mean deviation of adjacent incident edge angles from the ideal minimum angles (360 degrees divided by the degree of that node).
- Angular resoluction (deviation) measures the average deviation of angles between incident edges on each vertex.
Live examples
- Force Directed Layout Quality Convergence
- Automatically Finding Better Force Directed Layout Parameters (10x10 Grid)