$ show PBI-David/Deneb-Showcase
This repository is a curated showcase of advanced data visualizations built with Vega, Vega-Lite, and Deneb for Power BI. It contains 30+ standalone JSON specification files that each implement a complex interactive chart (e.g., Gantt charts with dependency arrows and collapsible phases, parliament charts with semicircular layout, force-directed graphs, convex hulls, beeswarm plots, animated bar chart races). The data used is either embedded inline or provided as separate CSV/JSON files covering real-world topics such as S&P 500 companies, UK COVID-19 rates, bank failures, military spending, and monarch timelines. While not a traditional software application or data pipeline, the repository serves as a reference library of reusable Vega patterns and declarative visualization logic. The specs demonstrate advanced Vega features including signal-based interactivity, data transforms (flatten, window, force), custom SVG paths, and dynamic layout algorithms. The repository is primarily a portfolio/educational resource, with no build scripts, tests, or dependency management. Some external data URLs and hardcoded static datasets may cause freshness issues, but the core visualization patterns remain stable and adaptable.
The LLM identified 5 files worth highlighting for reuse:
Advanced Gantt chart specification with pan/zoom, collapsible phase rows, dependency arrows computed via data transforms (lookup, flatten, fold, window), weekend shading, today marker, progress bars, milestone diamonds, and configurable signals for tooltips, buttons, and initial state. Implements a reusable pattern for hierarchical timeline visualizations with rich interactivity.
Self-contained Vega spec rendering a semicircular seating chart (parliament/arc diagram) using Palmer Penguins data. Calculates row assignments based on seating capacity, cumulative angles, and Cartesian coordinates via a chain of transform steps (formula, window, flatten). The layout algorithm is generalizable to any parliamentary or semicircular dot plot.
Demonstration of computing convex hulls entirely within Vega's data transforms using a custom Graham Scan algorithm. The animation shows the hull being built incrementally. This pattern shows how to implement geometric algorithms declaratively without external code.
Donut chart specification that includes a reusable algorithm for placing labels without overlap. Uses signal-driven adjustments and collision detection to position text marks around the arc. Configurable via top-level signals (e.g., topn, startAngle). Can be adapted to other circular label scenarios.
Interactive force-directed graph with draggable nodes, zoom/pan, link arrows, and dynamic charge/distance signals. Demonstrates Vega's force simulation (tick events, collide, x/y forces) and signal-based physics configuration. The pattern can be reused for any network visualization.