@inproceedings{bako2023user, author = {Bako, Hannah K. and Varma, Alisha and Faboro, Anuoluwapo and Haider, Mahreen and Nerrise, Favour and Kenah, Bissaka and Dickerson, John P and Battle, Leilani}, title = {User-Driven Support for Visualization Prototyping in D3}, year = {2023}, isbn = {9798400701061}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, url = {https://doi.org/10.1145/3581641.3584041}, doi = {10.1145/3581641.3584041}, abstract = {Templates have emerged as an effective approach to simplifying the visualization design and programming process. For example, they enable users to quickly generate multiple visualization designs even when using complex toolkits like D3. However, these templates are often treated as rigid artifacts that respond poorly to changes made outside of the template’s established parameters, limiting user creativity. Preserving the user’s creative flow requires a more dynamic approach to template-based visualization design, where tools can respond gracefully to users’ edits when they modify templates in unexpected ways. In this paper, we leverage the structural similarities revealed by templates to design resilient support features for prototyping D3 visualizations: recommendations to suggest complementary interactions for a users’ D3 program; and code augmentation to implement recommended interactions with a single click, even when users deviate from pre-defined templates. We demonstrate the utility of these features in Mirny, a design-focused prototyping environment for D3. In a user study with 20 D3 users, we find that these automated features enable participants to prototype their design ideas with significantly fewer programming iterations. We also characterize key modification strategies used by participants to customize D3 templates. Informed by our findings and participants’ feedback, we discuss the key implications of the use of templates for interleaving visualization programming and design.}, booktitle = {Proceedings of the 28th International Conference on Intelligent User Interfaces}, pages = {958–972}, numpages = {15}, keywords = {visualization tool, templates, visualization prototyping, visualization design, programming}, location = {Sydney, NSW, Australia}, series = {IUI '23} }