This repository provides supplementary materials for the paper "IDEA: Automated Design Space Exploration for Visualization Design".
.
├── design_spaces/ # Design space definitions
│ ├── schema.json # General schema for design spaces
│ ├── data_fact.json # Data fact design space (Section 3.2)
│ ├── narrative_composition.json # Narrative composition design space (Section 3.2)
│ ├── standard_visualization.json # Standard visualization design space (Section 3.2)
│ └── pictorial_visualization.json # Pictorial visualization design space (Section 3.2)
├── constraints_examples/ # Example ASP constraints
│ ├── data fact.lp # Example constraints for data fact dimensions
│ └── narrative composition.lp # Example constraints for narrative composition
├── prompt_templates.md # LLM prompt templates for constraint generation (Section 4.2.2)
└── params.json # Hyperparameters for all experiments (Section 4)
Each design space is defined as a JSON file listing the dimensions and their candidate elements. See design_spaces/schema.json for the general format. The four design spaces cover:
- Data Fact: Fact type, breakdown, measure, subspace, focus, and visualization title.
- Narrative Composition: Headline, narrative intent/structure/pattern/perspective, and data-driven/context-enhancing strategies.
- Standard Visualization: Mark type and visual encodings (x, y, color, size, shape, row, column, text, stack).
- Pictorial Visualization: Chart type, icon binding/strategy/theme, and color assignments.
The constraints_examples/ folder contains example ASP (Answer Set Programming) constraints generated by the LLM for a case study (Case I in Section 5). These illustrate the three constraint types used in IDEA:
- Hard constraints: Design choices that must be avoided.
- Soft positive constraints: Recommended design choices.
- Soft negative constraints: Discouraged design choices.
prompt_templates.md documents the complete prompt templates used for LLM-based constraint generation and validation, following the five-component framework: Role Specification, Variable Injection, Constraint Semantics, Generation Rules, and Domain-anchored Examples.
params.json contains all hyperparameters used in the experiments, including:
- Reward function weights (Eq. 7) and sensitivity analysis configurations (Section 4.5.3)
- MCTS parameters: exploration weight, max iterations, convergence criteria
- Baseline parameters: GA, SA, and Beam Search configurations (Section 4.5.1)
- Random seeds for reproducibility