Skip to content

devkotasabin/SPX-graph-layout

Repository files navigation

SPX-graph-layout

Stress-Plus-X (SPX) graph layout

Stress, edge crossings, and crossing angles play an important role in the quality and readability of graph drawings. Most standard graph drawing algorithms optimize one of these criteria which may lead to layouts that are deficient in other criteria. We introduce an optimization framework, Stress-Plus-X (SPX), that simultaneously optimizes stress together with several other criteria: edge crossings, minimum crossing angle, and upwardness (for directed acyclic graphs). SPX achieves results that are close to the state-of-the-art algorithms that optimize these metrics individually. SPX is flexible and extensible and can optimize a subset or all of these criteria simultaneously. Our experimental analysis shows that our joint optimization approach is successful in drawing graphs with good performance across readability criteria.

Instructions to Run

python3 spx.py

Requires the following packages

License

LGPLv2. Click here for more details.

Pulications

Please cite:

S. Devkota, R. Ahmed, F. De Luca, K. Isaacs, S. Kobourov, "Stress-Plux-X (SPX) Graph Layout", to appear in Graph Drawing and Network Visualization, 2019

About

Stress-Plus-X (SPX) graph layout

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages