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
This work is licensed under a Creative Commons Attribution 4.0 International License.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1684eabfd29588e04c35c03cb8c42e6f11af276f26da8871118b80f715cf666c
|
|
| MD5 |
edf4b3a0a24ad461a8d70f4033aa7491
|
|
| BLAKE2b-256 |
31e448a3fdbb62bdbdb0f980ccfa7f96a7929cd7eaaa8fed938996c4f8fcbfa0
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dfe4ef69c4a4216fabc7c2dadf01736e4b80134e414ae3e0f120ddfe68daab5f
|
|
| MD5 |
52c4776e51c30bcb3bede1818a59609e
|
|
| BLAKE2b-256 |
030f8461fe3a4207b28b507f5e1b0e9793a3ffe88f8c49eaba66e9062124572a
|