Data AnalyticsGenerative AI for verified analyst work

Use an LLM to explain a chart without inventing causality

PK
Pankit Kumar
Sr. Data Scientist at Parexel (a Goldman Sachs–backed company) · 20 September 2026 · 3 min read
Technically reviewed by Ishaan Sharma
In this article (6 sections)

Give an LLM the chart's verified data table, metric definition and comparison rules before asking for commentary. Require it to separate observations, hypotheses and unanswered questions. A chart can show an increase without establishing why that increase occurred.

The analyst's responsibility is to check both the numbers and the relationship asserted between them. An accurate percentage followed by an invented explanation remains an unreliable business summary.

Start with a chart evidence packet

Consider an original synthetic bar chart with two periods. Period A contains 150 completed orders worth 250,000 paise; period B contains 150 completed orders worth 231,000 paise. Assume identical eligibility rules and complete observations for this example.

The total decreases by 19,000 paise, or 7.6%, while the order count stays constant. Average order amount decreases from approximately 1,666.67 to 1,540 paise. The chart alone does not identify marketing effectiveness, customer satisfaction or economic conditions.

Include the table, currency, unit, period boundaries and filter settings in the prompt. If the chart uses a truncated axis or normalized values, include those display choices too. Supplying only a screenshot can leave labels, rounding and hidden filters ambiguous.

Compute the comparison outside the narrative

python
from decimal import Decimal
from calculator import seeded_cases,check_candidate

before = {'orders':150,'amount_paise':250000}
after = {'orders':150,'amount_paise':231000}
delta = after['amount_paise']-before['amount_paise']
change_percent = Decimal(delta)/Decimal(before['amount_paise'])*100
assert delta == -19000 and change_percent == Decimal('-7.600')
assert after['orders'] == before['orders']
assert Decimal(after['amount_paise'])/after['orders'] == Decimal('1540')

# A separate seeded example demonstrates the prose-review limitation.
case = next(c for c in seeded_cases()
            if c['case_id']=='semantic_blind_spot_requires_human_review')
result = check_candidate(case['answer'])
assert result['structured_checks_passed'] is True
assert result['human_review_required'] is True
assert 'caused' in case['answer']['claims'][0]['text']
print({'amount_change_paise':delta,'percent_change':str(change_percent),
       'order_count_change':0,'semantic_review_required':True})

The second part uses the analyst AI lab. It deliberately shows a limitation: a causal sentence labeled as descriptive passes a checker that only inspects structured fields. This is a failed narrative-review case even though its numeric structure passes.

Rewrite the claim at the right strength

An acceptable description is: “Completed-order amount fell 7.6% between the two observed periods, while completed-order count remained 150.” This states what the supplied table supports.

“Customers bought cheaper products because the campaign attracted low-value buyers” introduces a mechanism, a campaign effect and a customer characterization. None is established by the two bars.

A useful next sentence is: “Check product mix, within-product prices and discounts before choosing an explanation.” That is a proposed investigation. Labeling it as a next step prevents readers from mistaking it for a measured result.

Even a complete price-volume-mix decomposition is an accounting explanation of the observed difference under specified formulas. It does not, by itself, prove why people changed their purchases.

Ask for a bounded narrative

Use a prompt such as: “Write two observations supported by the supplied table. Then list two hypotheses requiring additional evidence. Do not state campaign causality, statistical significance or a future forecast. Preserve the metric's unit and period labels.”

Review whether the response obeys those boundaries. A request to avoid causal claims is useful guidance, but it is not an enforcement mechanism. Check each sentence against the evidence, including headings and chart captions.

Words such as “driven by,” “resulted from” and “impact” deserve attention, but a banned-word list is insufficient. Unsupported causality can be expressed without those words, and legitimate text may quote them while rejecting a claim.

Make the next decision proportionate

This chart supports investigating the lower amount per order. It does not support stopping a campaign, blaming a team or forecasting continued decline. A decision memo should distinguish the observed change from the additional data needed for those actions.

Exercise: write a 60-word chart summary with one observation, one explicitly labeled hypothesis and one testable follow-up. Have a second reviewer identify the exact table cells supporting every numeric claim.

NeuraPath's Data Analytics with Generative AI course links visualization, business interpretation and AI verification. The practical outcome is commentary that helps a manager decide what to investigate without disguising assumptions as findings.

Continue learning

This article is part of the Generative AI for verified analyst work sequence. Use the neighbouring tasks when you need the prerequisite or the next application.

PK
Pankit Kumar
Lead Instructor, NeuraPath Academy

Pankit Kumar has 10 years in Data Science & AI, building and shipping production systems in regulated pharma and clinical environments. He is a freelance trainer at Boston Institute of Analytics, AnalytixLabs and Scaler, and has taught this material to thousands of working professionals.

This article is part of our Data Analytics with Generative AI programme — 3–4 months. The full analyst stack — Excel, SQL, Power BI and Python pipelines — then a generative-AI layer you can prove is right.

Explore Data Analytics with Generative AI
Counselling is free · no obligation

Not sure which programme fits?

Tell us your background and we will map it to the right entry point — including saying so when a cheaper programme is the better fit. A counsellor replies within one working day.