From be5e6b306ea2020b23c0de74e5281bd820f6230a Mon Sep 17 00:00:00 2001 From: Trevor Manz Date: Fri, 7 Jun 2024 16:16:56 -0400 Subject: [PATCH] Update citations --- paper/paper.bib | 37 ++++++++++++++++++++++--------------- paper/paper.md | 44 +++++++++++++++++++++++--------------------- 2 files changed, 45 insertions(+), 36 deletions(-) diff --git a/paper/paper.bib b/paper/paper.bib index 6db0a644..0b13e975 100644 --- a/paper/paper.bib +++ b/paper/paper.bib @@ -61,7 +61,7 @@ @ARTICLE{EDAssistant % The entry below contains non-ASCII chars that could not be converted % to a LaTeX equivalent. -@ARTICLE{Zhao2022-gi, +@ARTICLE{Zhao2022, title = "{Notebook‐as‐a‐VRE} ({NaaVRE)}: From private notebooks to a collaborative cloud virtual research environment", author = "Zhao, Zhiming and Koulouzis, Spiros and Bianchi, Riccardo and @@ -111,7 +111,7 @@ @ARTICLE{Zhao2022-gi language = "en" } -@INPROCEEDINGS{Wang2023-ic, +@INPROCEEDINGS{Wang2023, title = "{Slide4N}: Creating Presentation Slides from Computational Notebooks with {Human-AI} Collaboration", booktitle = "Proceedings of the 2023 {CHI} Conference on Human Factors in @@ -150,7 +150,7 @@ @INPROCEEDINGS{Wang2023-ic " } -@INPROCEEDINGS{Drosos2020-nn, +@INPROCEEDINGS{Drosos2020, title = "Wrex: A Unified {Programming-by-Example} Interaction for Synthesizing Readable Code for Data Scientists", booktitle = "Proceedings of the 2020 {CHI} Conference on Human Factors in @@ -186,7 +186,7 @@ @INPROCEEDINGS{Drosos2020-nn USA, " } -@INPROCEEDINGS{Li2023-en, +@INPROCEEDINGS{Li2023, title = "Notable: On-the-fly Assistant for Data Storytelling in Computational Notebooks", booktitle = "Proceedings of the 2023 {CHI} Conference on Human Factors in @@ -222,7 +222,7 @@ @INPROCEEDINGS{Li2023-en " } -@INPROCEEDINGS{Jain2022-xc, +@INPROCEEDINGS{Jain2022, title = "Jigsaw: large language models meet program synthesis", booktitle = "Proceedings of the 44th International Conference on Software Engineering", @@ -259,7 +259,7 @@ @INPROCEEDINGS{Jain2022-xc location = "Pittsburgh, Pennsylvania" } -@ARTICLE{Wang2022-ck, +@ARTICLE{Wang2022, title = "{NOVA}: A Practical Method for Creating {Notebook-Ready} Visual Analytics", author = "Wang, Zijie J and Munechika, David and Lee, Seongmin and @@ -290,7 +290,7 @@ @ARTICLE{Wang2022-ck eprint = "2205.03963" } -@INPROCEEDINGS{Wang2024-ki, +@INPROCEEDINGS{Wang2024, title = "{SuperNOVA}: Design Strategies and Opportunities for Interactive Visualization in Computational Notebooks", booktitle = "Extended Abstracts of the 2024 {CHI} Conference on Human Factors @@ -329,7 +329,7 @@ @INPROCEEDINGS{Wang2024-ki USA " } -@INPROCEEDINGS{Kluyver2016-xa, +@INPROCEEDINGS{Kluyver2016, title = "Jupyter Notebooks -- a publishing format for reproducible computational workflows", booktitle = "Positioning and Power in Academic Publishing: Players, Agents @@ -355,7 +355,7 @@ @INPROCEEDINGS{Kluyver2016-xa (01/01/16)" } -@ARTICLE{Perez2007-im, +@ARTICLE{Perez2007, title = "{IPython}: A System for Interactive Scientific Computing", author = "Perez, Fernando and Granger, Brian E", abstract = "Python offers basic facilities for interactive work and a @@ -372,7 +372,7 @@ @ARTICLE{Perez2007-im year = 2007 } -@ARTICLE{Granger2021-jb, +@ARTICLE{Granger2021, title = "Jupyter: Thinking and Storytelling With Code and Data", author = "Granger, Brian E and P{\'e}rez, Fernando", abstract = "Project Jupyter is an open-source project for interactive @@ -394,7 +394,7 @@ @ARTICLE{Granger2021-jb year = 2021 } -@ARTICLE{Heer2024-rr, +@ARTICLE{Heer2024, title = "Mosaic: An Architecture for Scalable \& Interoperable Data Views", author = "Heer, Jeffrey and Moritz, Dominik", abstract = "Mosaic is an architecture for greater scalability, extensibility, @@ -426,8 +426,7 @@ @ARTICLE{Heer2024-rr language = "en" } - -@ARTICLE{Ouyang2019-un, +@ARTICLE{Ouyang2019, title = "{ImJoy}: an open-source computational platform for the deep learning era", author = "Ouyang, Wei and Mueller, Florian and Hjelmare, Martin and @@ -441,7 +440,6 @@ @ARTICLE{Ouyang2019-un language = "en" } - @misc{voila, author = {QuantStack}, title = {And Voilà!}, @@ -466,7 +464,6 @@ @misc{jscatter note = {Accessed: 2024-06-05} } - @ARTICLE{gos, title = "Gos: a declarative library for interactive genomics visualization in Python", @@ -648,3 +645,13 @@ @article{cev month={Apr} } +@misc{ecma, + author={Shu-yu Guo and Michael Ficarra and Kevin Gibbons and ECMAScript community}, + title="{ECMAScript® 2023 Language Specification}", + year=2023, + edition="14th", + month= jun, + url="https://262.ecma-international.org/14.0/", + section={16.2}, + notes="Accessed 2024-06-07" +} diff --git a/paper/paper.md b/paper/paper.md index 43ffab60..bcd5e1e9 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -31,6 +31,9 @@ affiliations: index: 3 date: 05 June 2023 bibliography: paper.bib +exports: + - format: typst + - template: lapreprint-typst --- # Summary @@ -44,7 +47,7 @@ platforms. Since its release a year and a half ago, anywidget has steadily gained adoption. Nearly 70 new widgets have been created or ported to anywidget and published to the Python Package Index (PyPI), along with many standalone scripts and notebooks. These tools cover general-purpose visualization -libraries [@jscatter; @Heer2024-rr] as well as notebook integrations for +libraries [@jscatter; @Heer2024] as well as notebook integrations for applications in biology [@gos; @vitessce; @viv; @cev], mapping [@lonboard], astronomy [@ipyaladin], and education [@drawdata]. Anywidget has also been integrated into popular visualization libraries like Altair [@altair], @@ -52,7 +55,7 @@ enhancing interactivity in notebooks and deepening user engagement with visualizations and code. ![The anywidget project. The Anywidget Front-End Module (AFM) is a -specification for widget front-end code based on ECMAScript (ES) modules. AFM +specification for widget front-end code based on ECMAScript (ES) modules [@ecma]. AFM can be written in web-standard ES or with _authoring tools_ that support popular front-end frameworks. The `anywidget` Python package adapts Jupyter-compatible platforms (JCPs) into AFM-compatible _host platforms_, enabling Jupyter Widgets @@ -65,13 +68,13 @@ that are ready to publish to PyPI. \label{fig:overview}](overview.png) Computational notebooks are the preferred environment for interactive computing and data analysis. Their popularity has spurred the development of interactive visual analytics systems that integrate seamlessly within these environments -[@Wang2024-ki]. The Jupyter project [@Kluyver2016-xa; @Perez2007-im; -@Granger2021-jb] has fostered an ecosystem for writing, executing, and sharing -computational notebooks, including tools for converting them into formats like +[@Wang2024]. The Jupyter project [@Kluyver2016; @Perez2007; @Granger2021] has +fostered an ecosystem for writing, executing, and sharing computational +notebooks, including tools for converting them into formats like books[@JupyterBook; @JupyterBookMyst], presentation slides [@nbconvert; -@Wang2023-ic], and dashboards [@voila]. However, approaches for authoring +@Wang2023], and dashboards [@voila]. However, approaches for authoring interactive notebook visualizations vary widely in features and platform -compatibility [@Wang2024-ki], resulting in diverse yet incompatible systems. +compatibility [@Wang2024], resulting in diverse yet incompatible systems. This inconsistency hinders composition and reuse of interactive visualizations in notebooks, fostering platform-specific, monolithic integrations instead of reusable, modular components that fit various analysis workflows. @@ -231,20 +234,19 @@ documentation about the project can be found at https://anywidget.dev. # Related work Interactive notebook visualization tools vary widely in features and -compatibility [@Wang2024-ki]. Some tools offer rich features (e.g., +compatibility [@Wang2024]. Some tools offer rich features (e.g., bi-directional communication) but rely on platform-specific APIs, limiting -compatibility [@Zhao2022-gi; @Wang2023-ic; @Drosos2020-nn; @Li2023-en; -@Jain2022-xc]. More simple approaches provide broader compatibility but lack -features which meaningfully enrich user workflows. For example, using static -templates or the NOVA framework [@Wang2022-ck] offers wide compatibility, -as the resulting HTML displays can be embedded in nearly any web-based notebook -platform. However, this approach supports only client-side applications with -one-way communication, meaning that only the initial visualization state can -come from the notebook, without further updates from other cells. Other -approaches, like ImJoy [@Ouyang2019-un], offer a more unified architecture for -building interactive visualizations with rich features across multiple -platforms. However, it is an entirely separate computing platform with limited -JCP integrations, not a framework for building reusable, modular visualization -components. +compatibility [@Zhao2022; @Wang2023; @Drosos2020; @Li2023; @Jain2022]. More +simple approaches provide broader compatibility but lack features which +meaningfully enrich user workflows. For example, using static templates or the +NOVA framework [@Wang2022] offers wide compatibility, as the resulting HTML +displays can be embedded in nearly any web-based notebook platform. However, +this approach supports only client-side applications with one-way +communication, meaning that only the initial visualization state can come from +the notebook, without further updates from other cells. Other approaches, like +ImJoy [@Ouyang2019], offer a more unified architecture for building interactive +visualizations with rich features across multiple platforms. However, it is an +entirely separate computing platform with limited JCP integrations, not a +framework for building reusable, modular visualization components. # References