Papers
Topics
Authors
Recent
Search
2000 character limit reached

InReAcTable: Interactive Data Story Assembly

Updated 9 July 2026
  • InReAcTable is a modular framework for interactive visual data story construction that combines iterative structural filtering with insight retrieval.
  • It employs a graph-based Acting module that organizes tabular subspaces into locators, using sibling and parent–child edges to relate insights.
  • Its Reasoning module leverages dual-path retrieval with Sentence-BERT embeddings and self-consistency to generate and rank coherent narrative elements.

Searching arXiv for the specified paper to ground the article. InReAcTable is a modular framework for interactive visual data story construction from tabular data. It addresses the problem of turning large numbers of automatically extracted insights into coherent narratives by interleaving three components—Interaction, Acting, and Reasoning—in a tight loop. Rather than treating insights as isolated bullets or enforcing a one-shot narrative, it supports branching visual stories organized as a tree of connected charts, with the analyst remaining “in the driver’s seat” through chart interactions and follow-up queries that continually update both the search graph and the large-language-model prompt (Aodeng et al., 25 Aug 2025).

1. Problem setting and pipeline position

InReAcTable is situated in the third stage of a three-phase workflow: data preparation and visualization, insight extraction, and story assembly (Aodeng et al., 25 Aug 2025). The framework squarely addresses story assembly, but it does so by feeding back into the earlier stages through user interaction: clicks and typed queries drive both structural filtering of the insight space and semantic refinement via Retrieval-Augmented Generation.

The motivating problem is that insights in tabular data encode valuable patterns, but constructing a visual data story from them is difficult because the relations among extracted insights are complex. Analysts must often sift through a vast number of discrete insights and decide which ones should be integrated into a unified narrative that matches their analytical goals. Existing methods, as characterized in the source description, either rely heavily on user expertise and become inefficient, or use automated approaches that cannot fully capture evolving goals (Aodeng et al., 25 Aug 2025).

A central design distinction is that InReAcTable does not present story construction as either manual curation of isolated findings or fully automated narrative generation. Instead, it supports iterative narrowing of the insight space and iterative refinement of semantic relevance. This suggests a hybrid model in which exploratory analysis and narrative assembly are coupled rather than sequentially separated.

2. Formal representation of data, subspaces, and insights

The framework formalizes a table as D={X1,,Xn}D = \{X_1,\ldots,X_n\}, where the attributes may be categorical or numeric (Aodeng et al., 25 Aug 2025). A data locator is defined as

Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),

which specifies a subspace SDS \subseteq D. Within a chosen subspace, one categorical breakdown BB and one aggregation Agg(V)Agg(V) on a numeric column VV are used to define an Analysis Entity,

AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.

An insight is then represented as a 5-tuple,

I=AE,Type,Category,Score,Description,I = \langle AE, Type, Category, Score, Description\rangle,

where Type{trend,outlier,}Type \in \{\text{trend}, \text{outlier}, \ldots\}, Category{point,shape,compound}Category \in \{\text{point}, \text{shape}, \text{compound}\}, Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),0 measures significance, and Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),1 is a short natural-language summary generated by template.

This representation makes the story-construction problem explicit at two levels. First, the analyst is not navigating arbitrary charts, but insights anchored in subspaces and analysis entities. Second, narrative assembly is not defined purely by semantic similarity; it is constrained by structural relations among locators. A plausible implication is that the framework is designed to preserve analytical provenance as stories expand.

3. Insight graph and the Acting module

The Acting module operates over a directed subspace graph Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),2 whose vertices are the set of all locators Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),3 (Aodeng et al., 25 Aug 2025). Two edge types encode structural relations:

  1. A sibling edge connects Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),4 and Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),5 if they have the same number of predicates, Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),6, and differ in exactly one assignment.
  2. A parent–child edge goes from Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),7 to Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),8 if Loc=(Xi1=x1Xik=xk),Loc = (X_{i_1}=x_1 \land \cdots \land X_{i_k}=x_k),9 adds exactly one extra predicate to SDS \subseteq D0, so that SDS \subseteq D1 and the assignments of SDS \subseteq D2 are a subset of those of SDS \subseteq D3.

When a user focuses on an insight SDS \subseteq D4 in subspace SDS \subseteq D5, the system searches the graph up to radius SDS \subseteq D6, a tunable “step” parameter, and retrieves all subspaces within SDS \subseteq D7 hops:

SDS \subseteq D8

For each SDS \subseteq D9, the framework generates all analysis entities and extracts their insights, then discards those with BB0 below a threshold BB1. The resulting set is the structurally filtered candidate set BB2.

The pseudocode supplied for this phase is correspondingly direct:

AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.5

The significance of this module is that it narrows the search space before any language-model reasoning occurs. A common misconception would be to view the system primarily as an LLM-driven recommender. Structurally, however, the first-stage operation is graph-based filtering over analytically related subspaces, with the LLM entering only after this reduction.

4. Reasoning module, RAG, and recommendation logic

The Reasoning module performs semantic filtering on the structurally reduced set BB3 through a Retrieval-Augmented Generation design (Aodeng et al., 25 Aug 2025). Each candidate insight BB4 is converted into a compact 4-tuple,

BB5

where BB6 is produced by a per-Type template. These sentences are encoded into BB7-dimensional vectors via Sentence-BERT and stored in a FAISS index for fast lookup.

Retrieval follows a dual-path design. Given a free-form query BB8 or a selected focus insight BB9, the framework computes:

  • Agg(V)Agg(V)0, the top-Agg(V)Agg(V)1 nearest neighbors to Agg(V)Agg(V)2 by cosine similarity;
  • Agg(V)Agg(V)3, the top-Agg(V)Agg(V)4 nearest neighbors to Agg(V)Agg(V)5 by cosine similarity.

The two rankings are merged by

Agg(V)Agg(V)6

with Agg(V)Agg(V)7 favoring user intent. After optional filtering by score and diversity across Type and Category, the system obtains Agg(V)Agg(V)8.

Prompt construction then uses a Chain-of-Thought format containing a short system instruction (“You are a data-story assistant…”), few-shot examples of Agg(V)Agg(V)9, and the current query, focus insight, and top candidate descriptions. Multiple reasoning chains are sampled via Self-Consistency, and the most frequent recommendations are selected. The LLM returns a ranked subset that is visualized back in the interface.

The supplied pseudocode makes the control flow explicit:

AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.6

This design indicates that semantic recommendation is constrained at every stage: by structural locality, by embedding retrieval, by merged ranking that privileges user intent, and by prompt context grounded in candidate descriptions rather than unrestricted generation.

5. System architecture and interactive prototype

The overall data flow begins with preprocessing: building the subspace graph VV0 from VV1, extracting all analysis entities and insights, generating sentence templates, and embedding those sentences into FAISS (Aodeng et al., 25 Aug 2025). Interaction starts when a user picks a subspace VV2 or begins with the global locator VV3. The system shows initial insights as collapsible glyphs. A click to expand an insight VV4 or a typed query VV5 triggers the Acting module, then the Reasoning module, after which recommended insights are added as children of VV6 in a radial “insight tree.” The process repeats until the story is complete.

The prototype front end comprises three linked panels:

Panel Contents Function
Subspace-Selection Panel Categorical filters; list of extracted insights with small-multiples charts Pick VV7 and inspect subspace-specific insights
Radial Exploration Panel Force-directed, concentric layout of insight-nodes Visualize the branching insight tree and relations
Insight Detail & History Panel Full chart, template description, score, pin/move/delete, timeline of previous queries and focused insights Support inspection, editing, and interaction history

Within the Radial Exploration Panel, node color encodes Category, the inner icon encodes Type, and solid or dashed edges of varying thickness denote sibling, parent–child, or semantic relations. Nodes start in a collapsed icon-only state and expand to a full chart on click. When an insight is pinned, a query is entered, or “recommend” is selected, the Acting and Reasoning modules fire and the next ring of nodes appears around that insight. Hovering on edges shows the LLM’s textual justification of semantic links.

A notable property of the interface is that it is built around a branching tree rather than a linear slideshow or a static infographic. This reflects the framework’s underlying assumption that analytical stories often diverge into multiple connected explanatory paths rather than conforming to a single predetermined sequence.

6. Case study and experimental findings

The reported case study uses a dataset of 1,280 console-sales records with attributes Company, Brand, Location, Season, Year, and Sales (Aodeng et al., 25 Aug 2025). In this example, the system surfaced a 2014 temporal outlier for Microsoft (VV8). Inspection of that subspace uncovered seasonal unevenness and the observation that 2014 did not follow the usual correlation (VV9). A query asking “Why the spike in Sept/Dec 2014?” led to brand-level temporal correlation insights for X360 and XOne (AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.0). Further queries on a month-by-month breakdown in 2014 produced point insights (AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.1–AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.2). The final outcome was a branching tree of seven connected insights, each visualized and annotated, forming a coherent story of the outlier.

The user experiment involved 18 analysts, including 7 with professional-tool experience, and compared InReAcTable against AWS QuickSight and vizGPT. Two tasks were reported. In Task 1, a within-subject freeform study allocated 20 minutes per tool and measured number of stories, number of insights per story, total number of insights, and blind expert ratings on logicality, coherence, diversity, and relevance. InReAcTable produced 40% more insights per story and twice the total insights (AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.3), together with significantly higher expert scores on all four qualitative metrics. In Task 2, a between-subject targeted study gave participants an initial insight and question and 10 minutes with an assigned tool. Experts rated the resulting stories as more coherent (AE:=S,B,Agg(V).AE := \langle S, B, Agg(V)\rangle.4) and more relevant. User surveys placed InReAcTable highest on learnability, ease-of-use, interface satisfaction, and confidence in staying on task.

These results support the framework’s stated goal of helping analysts efficiently sift through thousands of automatically generated insights and assemble coherent narratives. They do not imply fully autonomous story generation; rather, they document the effectiveness of an interactive loop in which structural filtering, semantic retrieval, and user intent remain tightly coupled.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to InReAcTable.