Bluefish: Composing Diagrams with Declarative Relations
Authors
Diagrams are essential tools for problem-solving and communication as they externalize conceptual structures using spatial relationships. But when picking a diagramming framework, users are faced with a dilemma. They can either use a highly expressive but low-level toolkit, whose API does not match their domain-specific concepts, or select a high-level typology, which offers a recognizable vocabulary but supports a limited range of diagrams. To address this gap, we introduce Bluefish: a diagramming framework inspired by component-based user interface (UI) libraries. Bluefish lets users create diagrams using relations: declarative, composable, and extensible diagram fragments that relax the concept of a UI component. Unlike a component, a relation does not have sole ownership over its children nor does it need to fully specify their layout. To render diagrams, Bluefish extends a traditional tree-based scenegraph to a compound graph that captures both hierarchical and adjacent relationships between nodes. To evaluate our system, we construct a diverse example gallery covering many domains including mathematics, physics, computer science, and even cooking. We show that Bluefish's relations are effective declarative primitives for diagrams. Bluefish is open source, and we aim to shape it into both a usable tool and a research platform.
Research Questions / Practical Problems
Question signals indexed for this paper.
- 100%
Improving Early Navigation in Time-Lapse Video with Spread-Frame Loading
CHI '19· Interactive Data Visualization +1
- 100%
Automatic Annotation Synchronizing with Textual Description for Visualization
CHI '20· Interactive Data Visualization +1
- 100%
Olio: A Semantic Search Interface for Data Repositories
UIST '23· Interactive Data Visualization +1
- 80%
InfoNice: Easy Creation of Information Graphics
CHI '18· Interactive Data Visualization +1
- 80%
Exploration and Explanation in Computational Notebooks
CHI '18· Interactive Data Visualization +1
- 80%
Leveraging Text-Chart Links to Support Authoring of Data-Driven Articles with VizFlow
CHI '21· Interactive Data Visualization +1
- 80%
VisGuide: User-Oriented Recommendations for Data Event Extraction
CHI '22· Interactive Data Visualization +2
- 80%
Pluto: Authoring Semantically Aligned Text and Charts for Data-Driven Communication
IUI '25· Interactive Data Visualization +1
- 75%
Learning to Automate Chart Layout Configurations Using Crowdsourced Paired Comparison
CHI '21· Interactive Data Visualization
- 67%
ConceptEVA: Concept-Based Interactive Exploration and Customization of Document Summaries
CHI '23· Generative AI (Text, Image, Music, Video) +2
Based on Jaccard similarity of research subtopics & professions (≥60%)