Picture by Creator
# Introduction
Traditionally, dashboards have been the core of information visualizations. This made sense, as they have been scalable: one centralized area to trace key efficiency indicators (KPIs), slice filters, and export charts.
However when the aim is to clarify what modified, why it issues, and what to do subsequent, a grid of widgets usually turns right into a “figure-it-out” expertise.
Now, most audiences count on tales as an alternative of static screens. In an period of low consideration spans, you will need to grasp individuals’s consideration. They need the perception, but additionally the context, the build-up, and the power to discover with out getting misplaced.
Because of this, information storytelling has moved past easy dashboards. We now have entered a brand new period of experiences which are guided (interactive narratives), spatial (augmented actuality (AR) / digital actuality (VR) visualizations), multi-sensory (sonification of information), and deeply exploratory (immersive analytics).

Picture by Creator
# Why Dashboards Are Reaching Their Limits
Dashboards are very helpful if we wish to monitor metrics and KPIs, however they battle with interactive exploration and true storytelling. Some frequent limitations embody:
- They lose context. A chart would possibly present that one thing went up or down, however not why.
- They overwhelm. Too many visuals in a single place result in cognitive overload.
- They’re passive. Customers look however don’t work together a lot with the info.
In the present day’s viewers desires greater than this. They don’t wish to see simply numbers on a display.
If you wish to follow turning uncooked datasets into actual enterprise narratives — not simply charts — platforms like StrataScratch are a good way to construct that storytelling instinct by real-world SQL and analytics issues.
They’re searching for tales, full with context, circulate, interplay, and even slightly drama.
Let’s discover 4 thrilling instructions the place information storytelling is heading.
# Interactive Narratives: Letting Information Unfold Like A Story
Think about in case your charts informed a narrative one chapter at a time. That’s the magic of interactive narratives. They merge storytelling construction with the freedom to discover.
// How Interactive Tales Truly Work (Scrolls, Steps, And Scenes)
A standard and attention-grabbing sample nowadays is scrollytelling, which mixes scrolling and storytelling. That is a web-based storytelling approach the place content material is revealed because the person scrolls down the web page. It mirrors the habits customers are used to at this time when scrolling by their favourite social media web sites.
One other frequent sample is a stepper story, which is the one we’ll discover in additional element right here. The person clicks from step to step to see the story develop. An instance of a stepper story may go like this:
- Step 1 explains what is going on (e.g. overview pattern)
- Step 2 highlights a change level (generally is a easy annotation)
- Step 3 compares segments (filters or small multiples)
- Step 4 proposes an motion (what to analyze subsequent)

// Stepper Instance With Plotly
This instance creates a small dataset and turns it right into a narrative utilizing buttons the place every button reveals a distinct “chapter” of the story.
import pandas as pd
import numpy as np
import plotly.graph_objects as go
# Pattern information: weekly signups with a marketing campaign launch at week 7
np.random.seed(7)
weeks = np.arange(1, 13)
signups = np.array([120, 130, 125, 140, 150, 148, 210, 230, 225, 240, 255, 260])
baseline = np.array([120, 128, 126, 135, 142, 145, 150, 152, 155, 158, 160, 162])
df = pd.DataFrame({"week": weeks, "signups": signups, "baseline": baseline})
Let’s examine the artificial information first:
![]()
Now let’s create the interactive plots:
fig = go.Determine()
# Hint 0: precise signups
fig.add_trace(go.Scatter(
x=df["week"], y=df["signups"], mode="lines+markers",
identify="Signups", line=dict(width=3)
))
# Hint 1: baseline (hidden initially)
fig.add_trace(go.Scatter(
x=df["week"], y=df["baseline"], mode="lines",
identify="Baseline (no campaign)", line=dict(sprint="dash"),
seen=False
))
# Narrative steps utilizing buttons
fig.update_layout(
title="Interactive Narrative: What changed after the campaign?",
xaxis_title="Week",
yaxis_title="Signups",
updatemenus=[dict(
type="buttons",
direction="right",
x=0.0, y=1.15,
buttons=[
dict(
label="1) Overview",
method="update",
args=[{"visible": [True, False]},
{"annotations": []}]
),
dict(
label="2) Highlight change",
technique="update",
args=[{"visible": [True, False]},
{"annotations": [dict(
x=7, y=df.loc[df["week"]==7, "signups"].iloc[0],
textual content="Campaign launch", showarrow=True, arrowhead=2
)]}]
),
dict(
label="3) Compare to baseline",
technique="update",
args=[{"visible": [True, True]},
{"annotations": [dict(
x=7, y=df.loc[df["week"]==7, "signups"].iloc[0],
textual content="Uplift vs baseline starts here", showarrow=True, arrowhead=2
)]}]
),
]
)]
)
fig.present()
Output:

We are able to see that interactive buttons flip one chart right into a guided story. It’s apparent why one of these visualization captivates the general public’s consideration.
This type of chart works effectively for product adoption, quarterly experiences, investor updates, and different instances the place you wish to information the viewers. In a nutshell, it’s a helpful approach if you need individuals to know the primary level step-by-step.
# AR And VR Visualizations: Turning Information Into A Area You Can Discover
AR provides information on prime of the actual world. For instance, one can see numbers or charts on prime of actual machines or buildings.
VR places you inside a totally digital world. You’ll be able to transfer round and discover the info as a digital area.
Each sorts of visualizations use 3D area to point out information as an setting. The purpose isn’t just to look cool, however to make relationships like distance, measurement, and teams simpler to know.
// The place AR/VR Are Helpful
- Once we intention to show data instantly on bodily {hardware}.
- Once we wish to stroll round and see how buildings or cities would possibly look in several conditions.
- Once we wish to examine simulations, outer area, or microscopic worlds in three dimensions.
- When people want to navigate transformations, take a look at ideas, and consider outcomes previous to committing to real-world actions.

Picture by Creator
// A VR-Prepared 3D Bar Chart
Right here we use A-Body and WebXR to construct a small 3D bar chart that runs within the browser. Each bar is one class, and taller bars imply larger values.
The scene runs on a daily desktop browser or in a VR headset that helps WebXR. There isn’t any advanced setup wanted.

The output, within the browser, appears like this:

The right way to run this instance domestically:
- Save the file as
vr-bars.html - Open a terminal in the identical folder
- Begin a easy native server with Python:
python -m http.server 8000 - Open your browser and go to:
It’s higher to open the file by a neighborhood server as a result of some browsers limit WebXR options when attempting to open uncooked HTML information instantly.
# Sonification: When Information Turns into Sound
Sonification means turning information into sound. The numbers can turn into excessive or low sounds, loud or quiet sounds, and even brief and lengthy sounds.
One would possibly assume this provides nothing to our information visualization dynamics. Nonetheless, sound might help us discover patterns, modifications, or issues, particularly if the info modifications over time.
// The Finest Use Circumstances For Sound-Primarily based Information Insights
- Monitoring programs (unusual or uncommon sounds are simple to note)
- Accessibility (sound helps individuals who can’t rely solely on charts or visuals)
- Dense time collection (rhythms make patterns and sudden spikes simpler to listen to)

Picture by Creator
// Turning A Time Collection Into Tones
Right here, every worth is become a musical pitch. The notes are easy sine sounds, with small gaps between them to make the sequence clearer.
This model is for a Jupyter pocket book (or JupyterLab / Google Colab). It makes use of IPython.show.Audio to play the sound instantly within the output cell, so there is no such thing as a want to put in system audio libraries.
import numpy as np
from IPython.show import Audio, show
# Instance: day by day web site visits (small time collection)
visits = np.array([120, 118, 121, 130, 160, 155, 140, 138, 200, 180])
min_f, max_f = 220, 880 # A3 to A5
v_min, v_max = visits.min(), visits.max()
def scale_to_freq(v):
if v_max == v_min:
return (min_f + max_f) / 2
return min_f + (v - v_min) * (max_f - min_f) / (v_max - v_min)
sample_rate = 44100
note_dur = 0.18 # seconds per notice
hole = 0.03 # silence between notes
audio_all = []
for v in visits:
freq = scale_to_freq(v)
t = np.linspace(0, note_dur, int(sample_rate * note_dur), endpoint=False)
tone = np.sin(2 * np.pi * freq * t)
# Fade out to cut back clicks
fade = np.linspace(1, 0, len(tone))
tone = 0.3 * tone * fade
audio_all.append(tone)
audio_all.append(np.zeros(int(sample_rate * hole)))
audio = np.concatenate(audio_all)
show(Audio(audio, price=sample_rate))
You’ll be able to hear the output right here.
Click on play to listen to it. When the go to depend is larger, the sound is larger too, making spikes simple to listen to.
To rework it right into a extra storytelling vibe, add a small line chart and spotlight essential moments like spikes, drops, and pattern breaks. A helpful addition is to play the audio whereas revealing the road over time, so readers each see and listen to the shift.
# Immersive Analytics: Exploring Information By Transferring Via It
Immersive analytics is once we discover information in a method that’s extra like shifting and touching issues, quite than simply clicking buttons or filters.
The immersivity comes from:
- Information being proven in 3D or put out in area when it makes issues simpler to know
- The power to maneuver sliders, choose elements of the info, and alter the view, with the info updating instantly
- Adjustments in a single chart inflicting different charts to replace as effectively
// Interactive 3D Exploration
This instance makes use of Plotly to point out a 3D chart we will flip and filter. It isn’t an ordinary dashboard; it’s a device to discover and work together with information.
Run this in a Jupyter Pocket book:
import numpy as np
import pandas as pd
import plotly.specific as px
import ipywidgets as widgets
from IPython.show import show
# Artificial multi-dimensional information
np.random.seed(42)
n = 800
df = pd.DataFrame({
"x": np.random.regular(0, 1, n),
"y": np.random.regular(0, 1, n),
"z": np.random.regular(0, 1, n),
})
df["score"] = (df["x"]**2 + df["y"]**2 + df["z"]**2)
slider = widgets.FloatSlider(
worth=float(df["score"].quantile(0.90)),
min=float(df["score"].min()),
max=float(df["score"].max()),
step=0.05,
description="Score ≤",
readout_format=".2f",
continuous_update=False
)
out = widgets.Output()
def render(threshold):
filtered = df[df["score"] <= threshold].copy()
fig = px.scatter_3d(
filtered, x="x", y="y", z="z", coloration="score",
title="Immersive analytics (lite): rotate + filter a 3D space",
opacity=0.75
)
fig.update_traces(marker=dict(measurement=3))
fig.present()
def on_change(change):
if change["name"] == "value":
with out:
out.clear_output(wait=True)
render(change["new"])
slider.observe(on_change)
show(slider, out)
render(slider.worth)
Right here is the output:

To enhance this, you possibly can let individuals choose factors, present the chosen rows in a desk, or draw traces round clusters. It really works effectively if you information the exploration throughout a gathering. For instance, you can begin with a step-by-step path, then let the general public discover on their very own.
# Conclusion
The way forward for information storytelling is not going to concern the removing of dashboards solely; as an alternative, we’ll see an inclination towards extra interactive and immersive tales about information, fashions, and insights.

Picture by Creator
In a nutshell, right here is how one can select the perfect sort of information visualization:
- Need to information somebody? Attempt an interactive narrative.
- Want to point out spatial relationships? AR/VR might help.
- Hoping to succeed in extra senses? Let your information communicate.
- Need to invite exploration? Create an immersive playground.
The perfect half is that you don’t want a giant finances or staff to do that.
Choose one approach and construct a tiny prototype. Somewhat stepper or a 3D bar, a sonified line chart or a slider-based filter. You can be amazed how briskly your information begins feeling like a narrative.
Nate Rosidi is an information scientist and in product technique. He is additionally an adjunct professor educating analytics, and is the founding father of StrataScratch, a platform serving to information scientists put together for his or her interviews with actual interview questions from prime firms. Nate writes on the most recent developments within the profession market, provides interview recommendation, shares information science initiatives, and covers the whole lot SQL.



