CoolFace
Datasetpublic

vinod-anbalagan/gridline-chartqa

Adaption Charts P2 — Gold Chart-QA Dataset A verified, quality-first chart question-answering dataset built for the Adaption Labs AutoScientist Challenge (Part 2, Data Visualization track). Two sources: a programmatically generated synthetic core (correct-by-construction) and a hand-authored hardset built from real public dashboards and reports. At a glance 1415 rows total — 1317 synthetic + 98 hardset 7 chart types — bar, line, grouped_bar, stacked_bar, pie… See the full description on the dataset page: https://huggingface.co/datasets/vinod-anbalagan/gridline-chartqa.

sourceHugging Facecc-by-4.0updated 2mo agoView on Hugging Face
0likes497downloads
Dataset Card

Adaption Charts P2 — Gold Chart-QA Dataset

A verified, quality-first chart question-answering dataset built for the Adaption Labs AutoScientist Challenge (Part 2, Data Visualization track). Two sources: a programmatically generated synthetic core (correct-by-construction) and a hand-authored hardset built from real public dashboards and reports.

At a glance

<!-- AUTOGEN:counts -->

  • 1415 rows total — 1317 synthetic + 98 hardset <!-- /AUTOGEN:counts -->
  • 7 chart types — bar, line, groupedbar, stackedbar, pie, donut, mixed
  • 10 task types — every allowed task_type populated at target
  • English only, real-world business/finance/health/policy domains
  • Every row verified=true

Schema

Each row:

columntypedescription
file_namestringHF imagefolder path to the chart PNG (images/...)
idstringunique row id, e.g. syn_bar_0001__q1 or hs_0007__q3
sourceenumsynthetic \hardset
questionstringshort flat-register question
answerstringshort exact answer, e.g. 47, Enterprise, -$1440.81, 11.3%, Yes
chart_typeenumbar \line \grouped_bar \stacked_bar \pie \donut \mixed
task_typeenum10 values: lookup_value, delta_absolute, max_min, rank_order, compare_categories, aggregation_sum_avg, multi_series_compare, trend_direction, percent_change_ratio, hard_multi_step
difficultyenumeasy \medium \hard
verifiedbooltrue on all rows (see verification protocol below)
splitenumtrain on all rows (no held-out val/test in this file)
notesstringprovenance / attribution / generator notes

Composition

<!-- AUTOGEN:composition --> By source

sourcerowsshare
synthetic131793.1%
hardset986.9%

By chart_type

chart_typerows
bar417
line288
grouped_bar201
stacked_bar184
pie155
mixed104
donut66

By task_type

task_typerows
max_min301
lookup_value273
delta_absolute156
rank_order141
compare_categories131
trend_direction124
multiseriescompare111
aggregationsumavg89
percentchangeratio56
hardmultistep33

By difficulty

difficultyrows
medium726
hard358
easy331

<!-- /AUTOGEN:composition -->

Perceptual difficulty

Most chart-QA datasets vary difficulty by arithmetic — more steps in the calculation. That is not what challenges a vision-language model. A capable VLM handles multi-step arithmetic easily once it has read the values; what it struggles with is reading the values in the first place.

358 rows (25.3%) are hard by perceptual construction. Eight mechanics:

mechanicwhat it doeswhy it's hard
truncated_axisy-axis starts well above zerobar height ratios badly misrepresent value ratios; a model comparing pixels is wrong, a model reading labels is right
unlabeledno value annotations at allvalues are snapped exactly onto gridlines, so the answer stays unambiguous — but only if the axis is actually read
near_tietop two values differ by ~1–2%eyeballing the tallest bar fails
similar_colorsseries palette uses near-identical huesthe legend must be resolved rather than pattern-matched
many_categories12–16 categories, rotated labels, small fontdense visual scanning
crowded_legendlegend placed over the plot areapartial occlusion of the data
log_scalelogarithmic y-axisequal pixel distances are unequal value deltas
dual_axistwo y-axes at different scalesreading the wrong axis yields a plausible but wrong number

Roughly 90 of these rows carry no value labels whatsoever — the answer must be read off gridlines. Answers remain correct-by-construction because values are generated as exact multiples of the tick step.

Every hard row's notes field names its mechanic, e.g. hard/truncated_axis; procedural gen (seed=777, idx=12).

Verification protocol

Every row is verified=true, but the mechanism differs by source:

Synthetic — correct-by-construction. Each chart is rendered from a seeded pseudorandom value distribution. The answer to every question is computed from those underlying values before the chart image is drawn. There is no visual estimation involved. The full generation pipeline lives in the companion repo alongside this dataset. Seeds are deterministic.

Hardset — hand-authored, human-reviewed. Every hardset row was authored one at a time from a real chart screenshot. Each row was reviewed row-by-row against the source image during authoring, with the answer recorded only after cross-checking what the chart actually shows. All questions were designed to be answerable from the image alone without external context.

Data sources (hardset only)

Hardset uses screenshots of publicly available charts from official statistical / research bodies. Each row's notes column carries the source institution and original screenshot filename.

sourcerowsnote
Statistics Canada (StatCan)24Open Licence Agreement
U.S. Bureau of Labor Statistics (BLS)29U.S. Government works, public domain
European Central Bank (ECB)18Reproduction permitted with attribution
World Health Organization (WHO)21See attribution notes below
Bank of Canada (BoC)2Open license
Climate Policy Database4CC-BY-4.0

Attribution notes. WHO source materials are typically licensed under CC-BY-NC-SA-3.0 IGO. This dataset uses WHO chart screenshots for the transformative purpose of vision-language model training, with full attribution preserved in each row's notes. Downstream users concerned about commercial use should filter rows where notes begin with hardset; WHO; and treat them separately.

Intended use

Fine-tuning multimodal chart-QA models. Short-answer chart understanding benchmarks. Ablation studies on chart-type or task-type coverage.

Not intended for downstream tasks that require gold-standard OCR fidelity or exact numerical extraction from dense financial tables — this dataset targets reasoning about charts, not exact digit extraction.

Known limitations

  • English only.
  • Synthetic aesthetic is uniform. All synthetic rows use the same matplotlib renderer with a consistent style. Real-world visual diversity comes entirely from the hardset rows.
  • Hardset skews toward `max_min` and `lookup_value`. Real dashboards naturally support these tasks; the balance step trims synthetic max_min heavily to compensate, but hardset structural bias remains.
  • `chart_type=mixed` is exclusively hardset — synthetic doesn't generate multi-panel dashboards. Mixed charts are visually harder for VLMs and represent a natural difficulty axis.
  • No held-out split in this file. An external evaluation slice (ChartQAPro-derived) lives outside this dataset by design.

Citation

If you use this dataset, please cite:

@misc{anbalagan2026adaptioncharts,
  title  = {Adaption Charts P2: A Small Gold Chart-QA Dataset},
  author = {Anbalagan, Vinod},
  year   = {2026},
  howpublished = {\url{https://huggingface.co/datasets/vinod-anbalagan/adaption-charts-p2-gold}}
}

Please also credit the upstream chart sources listed in the "Data sources" section above when relevant.

License

This dataset is released under CC-BY-4.0. See attribution notes above for source-specific considerations.