Skip to main content

Project

Temporal RectEuler

2025
Information VisualizationSvelteOptimization
Temporal RectEuler

Overview

Temporal RectEuler extends the RectEuler technique by Paetzold et al. to temporal set data—visualizing how set memberships and intersections change over time. It was a collaboration with Maximilian Scheiber for the Visualization course (VU Visualization) at TU Wien in winter semester 2025, built on the original RectEuler codebase.

RectEuler lays out intersecting sets as optimized rectangles via mixed-integer programming (Gurobi). Our extension adds multi-timestamp pipelines: datasets are split by timestamp, optimized sequentially with optional warmstarts from the previous solution, and stabilized with extra objective terms that penalize jumps in set position, set size, and element-group placement. A stability tradeoff parameter balances compactness against temporal coherence.

The Svelte frontend adds overview mode (all timestamps side-by-side) and playback mode (timeline scrubbing with morphing transitions), plus richer highlighting and settings. A Dockerized stack (nginx, Flask API, Redis queue, Postgres, Gurobi workers) supports uploading and solving datasets. Example corpora include European organization memberships, historical empires, and other multi-year set collections.

There is no public live solver deployment yet; the interactive project documentation is hosted with this portfolio.