Skip to main content

DimFlux: Force-Based Doubly-Additive Drawings

Project description

DimFlux: Force-Directed Doubly-Additive Line Diagrams

This repository implements a force-directed placement approach for doubly-additive line drawings.

References

This project is based on the theory and methods described in the following works.

Primary Reference

@misc{nöhre2026dimfluxforcedirectedadditiveline,
  title = {DimFlux: Force-Directed Additive Line Diagrams},
  author = {Marcel Nöhre and Dominik Dürrschnabel and Bernhard Ganter and Gerd Stumme},
  year = {2026},
  eprint={2603.16366},
  archivePrefix={arXiv},
  primaryClass={cs.CG},
  url={https://arxiv.org/abs/2603.16366}
}

Supplementary Material

@misc{nohre_2026_18936106,
  author = {Nöhre, Marcel and Dürrschnabel, Dominik and Ganter, Bernhard and Stumme, Gerd},
  title = {A Visual Benchmark of DimFlux: Comparison of Line Diagrams for Concept Lattices},
  month = mar,
  year = 2026,
  publisher = {Zenodo},
  doi = {10.5281/zenodo.18936106},
  url = {https://doi.org/10.5281/zenodo.18936106}
}

If you use this code in your work, please cite the above references.

Usage

Clone the repository and initialize the environment. uv will automatically create a virtual environment and sync dependencies based on the pyproject.toml. uv will automatically create a virtual environment.

uv sync

Execute the layout generation using uv run to ensure the correct environment context.

uv run dim-flux

The script will prompt you for a path to a .cxt file. To export the node positions add the --export flag.

uv run dim-flux --export

Configuration

Category Parameter Description
Drawings plot_si_graph Visualize the Supremum-Infimum graph ($f_{max}$ is highlighted)
plot_initial_layout Visualize the initial layout of the concept lattice
plot_optimized_layout Visualize the final optimized layout of the concept lattice
Annotations si_graph_annotations Display annotations in the SI-Graph
initial_layout_annotations Display annotations in the initial drawing
optimized_layout_annotations Display annotations in the final optimized drawing
Forces plot_individual_forces Display force vectors for objects and attributes respectively
plot_combined_forces Display combined force vectors
plot_gradients Display gradient vectors at concepts
Dev plot_origin Display the origin $(0,0)$

License

Shield: CC BY 4.0

This work is licensed under a Creative Commons Attribution 4.0 International License.

CC BY 4.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dim_flux-1.0.0.tar.gz (26.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dim_flux-1.0.0-py3-none-any.whl (31.4 kB view details)

Uploaded Python 3

File details

Details for the file dim_flux-1.0.0.tar.gz.

File metadata

  • Download URL: dim_flux-1.0.0.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"25.10","id":"questing","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dim_flux-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1684eabfd29588e04c35c03cb8c42e6f11af276f26da8871118b80f715cf666c
MD5 edf4b3a0a24ad461a8d70f4033aa7491
BLAKE2b-256 31e448a3fdbb62bdbdb0f980ccfa7f96a7929cd7eaaa8fed938996c4f8fcbfa0

See more details on using hashes here.

File details

Details for the file dim_flux-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dim_flux-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 31.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"25.10","id":"questing","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dim_flux-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dfe4ef69c4a4216fabc7c2dadf01736e4b80134e414ae3e0f120ddfe68daab5f
MD5 52c4776e51c30bcb3bede1818a59609e
BLAKE2b-256 030f8461fe3a4207b28b507f5e1b0e9793a3ffe88f8c49eaba66e9062124572a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page