Skip to main content

Python implementation of the Fast Linear Assigment Sorting Algorithm

Project description

Fast Linear Assignment Sorting - FLAS

main_pic

FLAS allows to sort 2d grids based on similarity. This directory contains the python implementation and shows how to use it.

Features

  • Implementation of FLAS and DPQ (and other metrics to quantify an arrangement)
  • Allows frozen fields
  • Allows empty fields (holes)
  • Installable via PyPI
  • Easy to use python interface with numpy support
  • Fast implementation in C++

Installation

TODO: Install via pypi

Usage

Given that you have N features with D-dimensions, you can sort these features based on similarity with the following code:

import numpy as np
from vc_flas import Grid, flas

N, D = 241, 7
features = np.random.random((N, D))
grid = Grid.from_features(features)

arrangement = flas(grid, wrap=True, radius_decay=0.99)

sorted_features = arrangement.get_sorted_features()
height, width, dim = sorted_features.shape
assert (height, width, dim) == (16, 16, 7)

TODO

  • Explain arrangements / labels
  • How to build grids (GridBuilder, Grid.from_features(), Grid.from_grid_features())
  • explain flas() Parameters
  • explain metrics

For more usage examples see examples TODO.

About

Kai Barthel, Nico Hezel, Klaus Jung, Bruno Schilling and Konstantin Schall

HTW Berlin, Visual Computing Group, Germany

Visual Computing Group

This is an example implementation of the algorithms from the paper

Improved Evaluation and Generation of Grid Layouts using Distance Preservation Quality and Linear Assignment Sorting

Published in COMPUTER GRAPHICS Forum: (https://onlinelibrary.wiley.com/doi/full/10.1111/cgf.14718)

Reference

Reference to cite when you use any of the presented algorithms in a research paper:

@article{https://doi.org/10.1111/cgf.14718,
    author = {Barthel, K. U. and Hezel, N. and Jung, K. and Schall, K.},
    title = {Improved Evaluation and Generation Of Grid Layouts Using Distance Preservation Quality and Linear Assignment Sorting},
    journal = {Computer Graphics Forum},
    volume = {42},
    number = {1},
    pages = {261-276},
    keywords = {interaction, user studies, visualization, information visualization, high dimensional sorting, assistive interfaces},
    doi = {https://doi.org/10.1111/cgf.14718},
    url = {https://onlinelibrary.wiley.com/doi/abs/10.1111/cgf.14718},
    year = {2023}
}

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

vc_flas-0.1.0.tar.gz (14.6 kB view details)

Uploaded Source

Built Distributions

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

vc_flas-0.1.0-cp312-cp312-win_amd64.whl (82.9 kB view details)

Uploaded CPython 3.12Windows x86-64

vc_flas-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

vc_flas-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (104.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

vc_flas-0.1.0-cp312-cp312-macosx_11_0_x86_64.whl (78.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

vc_flas-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (70.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

vc_flas-0.1.0-cp311-cp311-win_amd64.whl (82.9 kB view details)

Uploaded CPython 3.11Windows x86-64

vc_flas-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

vc_flas-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (105.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

vc_flas-0.1.0-cp311-cp311-macosx_11_0_x86_64.whl (79.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

vc_flas-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (71.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file vc_flas-0.1.0.tar.gz.

File metadata

  • Download URL: vc_flas-0.1.0.tar.gz
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for vc_flas-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6cef16e58a9c58548cbae369aedc1a4e2881fc19e78838527d7de30724ba3204
MD5 f9f62de6d400e1e5d1facd6dbc9df01b
BLAKE2b-256 dfb629b05c266027b84dd91fcdcfdacd737d931c0ca8dec8e4735e87b66730cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0.tar.gz:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: vc_flas-0.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 82.9 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for vc_flas-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4f98dcd73c02c9e36453241f813efe8fa88b54ec36e32d295ac3c7ff0cb441b6
MD5 7fc91640394b62ca19d568fbf01fb8f3
BLAKE2b-256 44caccd79e45d22b1eaedd45ce2fe976d069e950c5d7f390676e314037e19f9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp312-cp312-win_amd64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b19e7492e5a0638cc9ebe2d70b580a95b4c0f5b1830b3b94843d6ad5e0f01d09
MD5 81919fe259ab625d0ee18a7cf9e740e8
BLAKE2b-256 85b388e646d2def483e9172e0a98dc2009b7927b1decffb3bac1befbec27ab9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c60a8ba2179bccc1b8250dbf9c255e2c8166bd8a10ae62c85c734a94f4f551f8
MD5 dbb0d45650e61599409da14917df878a
BLAKE2b-256 eb34a0edaeb5946b39b8add636199b1a91e56b91eb3627fd10e8a515b2288601

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp312-cp312-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 3be5fb720a1dd565fd91bd9272117a794a895c8766f1bc1ec35f36c30242990c
MD5 e9c4baf4c99210b68d5f1d9e220efec3
BLAKE2b-256 d5e81f22abc4ae658f65429666805182584b0497784249d59847e7c7add0969a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp312-cp312-macosx_11_0_x86_64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d51e6bd6818f3429652f3217541646c547db9a914a078fe192a6806143982ab3
MD5 c5f5bf3e3ddee19f4b78d80658fe5e61
BLAKE2b-256 89560951c2215200e6499b474b689326820892ac87ebe64701a9229305a7856a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: vc_flas-0.1.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 82.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for vc_flas-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 21fd6135e9348523021cc547a075a55f2b8643bbce0161a4b7c55657636354ae
MD5 1e890e9f0c51a15ad74c6a0d328153d6
BLAKE2b-256 b63863ff662039d714e3636acc47d7adc46ecd017c82e76d2f177412f781f11c

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp311-cp311-win_amd64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8004297702cd7d0bd269b3c98a9ba24cc46b1d120168a459ac45f4e0c5ff22ca
MD5 6a95946faa19687c9b422a872f7ddb9b
BLAKE2b-256 5f03fbdf8a151511a930694921a403b30f36fc1cd6dfd7162dce80908c9164eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bfd3045d539c3b85d0728340e93bdb2b479592c4806bdc36a7189f68e84759b0
MD5 f01f450b64db0682e1486d1dc3f8647f
BLAKE2b-256 a1317b9bf875e43b868ecc74f2d4b2a9d023519e7205a3746ebc16484ff70f02

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 226c1c74d2bb6f7a4a8a1f1a2bcdd3ededcdd60cf118e875d177162ea3fb1f9a
MD5 53db94ea60247a9f0f2eb3a4fe176c3e
BLAKE2b-256 69a36b60d8511d1d9fb8fb84a72d9795fedcfe0de377bb54c10e583d1f484170

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp311-cp311-macosx_11_0_x86_64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vc_flas-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vc_flas-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 89daf039b566d318782dcce7e40694902027f808083c26222e006840cd3dd918
MD5 b93f7aa8ca9b4f6d5ae3cb44a0fe2829
BLAKE2b-256 da36c253d41beae853c8a2543757de33378b35086d2ac3f3624417dc200146ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for vc_flas-0.1.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: BuildAndPublish.yml on Visual-Computing/LAS_FLAS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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