Introduction
This week’s Workout Wednesday challenge was Numbers of Different Magnitudes, but the bigger lesson for me was this:
You can build custom analytical experiences in Sigma using AI.
For this submission, I used AI-assisted coding to create a custom Sigma plugin (React + D3) that goes beyond standard chart behavior. It combines a magnitude view and a chronological trend view, then layers dynamic narrative insights.
The point wasn’t only visual polish. It was proving a workflow: use Sigma’s data foundation, then use AI to rapidly build custom components that communicate what default visuals often can’t.
In short, this project is about more than one challenge prompt. It’s about using AI + Sigma to push past the “normal” dashboard pattern and build something tailored, explainable, and reusable.
Need Access to Sigma?
Note: You will only have view access to WOW Workbooks, Folders, and Workspaces, not edit access. Please create your WOW Workbooks under “My Documents.” We suggest creating a folder to organize all your workbooks.
Prepare your Sigma workbook
- Open the challenge workbook and identify the 3 required fields:
- Issue Month
- Loan Amount
- Annual Income
- Create:
- Build page (visible)
- Prompt Lab page (hidden, for prompt drafts and QA tables)
Hint: Your prompt quality depends on naming clarity. Clean field names first.
Set up a prompt-first build flow
- In Cortex, start with a clear objective prompt:
- “Build a two-panel story: left bar for magnitude by income cohort, right line for monthly trend by cohort.”
- Ask Cortex to generate:
- cohort bucketing logic
- aggregation logic
- insight helper functions
- plugin layout scaffold
Hint: Don’t ask for “a dashboard.” Ask for specific outputs (fields, functions, chart behaviors).
Prompt for cohort logic
- Ask Cortex to create cohort definitions:
- Low < 50k
- Middle 50k–120k
- High > 120k
- Validate with a table before charting.
Hint: Prompt Cortex to return both formula + a quick validation method.
Prompt for chronological correctness
- Ask Cortex to parse and sort Issue Month as real dates.
- Require explicit month ordering check in output.
Hint: Add this to your prompt: “Do not sort months lexicographically.”
Prompt for narrative functions
- Ask Cortex to generate:
- getBarInsight(barData) -> max/min cohort + ratio sentence
- getLineInsight(linePoints) -> first vs last month % change sentence
- Require non-placeholder text tied to computed values.
Hint: Tell Cortex the exact sentence structure you want.
Prompt for Sigma plugin wiring
- Ask Cortex to include Sigma API hooks:
- Require dynamic updates on filtering.
Hint: Include: “Recompute charts + insight text whenever filters change.”
Prompt for visual storytelling standards
- Ask Cortex for:
- side-by-side flex layout (50/50 columns, 40px gap)
- strong title/subtitle
- cohort definition text
- axis labels and numeric data labels
- slower reveal animation (bars + line draw)
Hint: Add “presentation-ready for LinkedIn” to enforce polish.
Prompt for performance refinement
- After first version, run a second prompt:
- “Optimize render speed without removing storytelling animation.”
- Ask Cortex to reduce expensive label rendering and tune transition timings.
Hint: Use iterative prompting: build -> test -> refine.
QA prompts (final pass)
Use Cortex with targeted QA prompts:
- “What breaks with only one month selected?”
- “What breaks with null income?”
- “How should empty states read?”
- “Are axes aligned and labels non-overlapping?”
Hint: Prompt Cortex to return a short bug checklist, not just code.
Requirements
Dataset
Sigma Sample Database:
Share
After you finish your workout, share on LinkedIn, Sigma’s Community page, (or Twitter) using the hashtags #WOW2024 and #SigmaComputing, and tag Jess Batten, Ashley Bennett, Eric Heidbreder, Katrina Menne, Carter Voekel, and Michal Shaffer!
Create an interactive, sharable version of your solution here.
Also, make sure to fill out the Submission Tracker so that we can count you as a participant this week to track our participation throughout the year.
Solution