Streamlining Visualization Authoring in D3 Through User-Driven Templates
Hannah Bako, Alisha Varma, Anuoluwapo Faboro, Mahreen Haider, Favour, Nerrise, Bissaka Kenah, Leilani Battle

TL;DR
This paper analyzes common D3 visualization implementations to create reusable code templates, aiming to simplify D3 visualization authoring and reduce the learning curve for users.
Contribution
It provides a qualitative analysis of D3 visualizations, identifies common implementation patterns, and offers reusable code templates for eight popular visualization types.
Findings
Five visualization types account for 80% of D3 visualizations
Underlying code structures are similar across different visualization types
Reusable templates can facilitate easier D3 visualization creation
Abstract
D3 is arguably the most popular tool for implementing web based visualizations. Yet D3 has a steep learning curve that may hinder its adoption and continued use. To simplify the process of programming D3 visualizations, we must first understand the space of implementation practices that D3 users engage in. We present a qualitative analysis of 2500 D3 visualizations and their corresponding implementations. We find that 5 visualization types (Bar Charts, Geomaps, Line Charts, Scatterplots, and Force Directed Graphs) account for 80% of D3 visualizations found in our corpus. While implementation styles vary slightly across designs, the underlying code structure for all visualization types remains the same; presenting an opportunity for code reuse. Using our corpus of D3 examples, we synthesize reusable code templates for eight popular D3 visualization types and share them in our open source…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Data Visualization and Analytics · Scientific Computing and Data Management
