CoolFace
Datasetpublic

Papajams/orbura-dataviz-dataset

Orbura AutoScientist Data Visualization Dataset Dataset Description A synthetic instruction-tuning corpus for data visualization tasks, built for the AutoScientist Challenge Part 2 (Data Visualization). Every example is deterministically generated — no human annotation, no LLM-generated labels — so the ground truth is exact and reproducible. Task types Task Weight Description chart_qa 45% Arithmetic, comparison, and trend questions about… See the full description on the dataset page: https://huggingface.co/datasets/Papajams/orbura-dataviz-dataset.

sourceHugging Faceupdated 2mo agoView on Hugging Face
0likes47downloads
Dataset Card

Orbura AutoScientist Data Visualization Dataset

Dataset Description

A synthetic instruction-tuning corpus for data visualization tasks, built for the AutoScientist Challenge Part 2 (Data Visualization). Every example is deterministically generated — no human annotation, no LLM-generated labels — so the ground truth is exact and reproducible.

Task types

TaskWeightDescription
chart_qa45%Arithmetic, comparison, and trend questions about chart data (max, min, sum, avg, median, range, pcttotal, ratio, rank, aboveavg, trend, difference, counterfactual, percentage_change)
chart_to_code15%Generate matplotlib code from a chart type + data table
fix_code10%Repair common matplotlib bugs (typos, missing imports, mismatched lengths, invalid kwargs, string values, swapped axes)
code_to_desc10%Describe what a matplotlib code block produces, including key statistics
style_transfer10%Modify an existing plot (change chart type, add grid, rotate labels, change color)
chart_choice5%Select the most appropriate chart type for given data
data_to_code5%Convert CSV data into a matplotlib chart

Chart types covered

  • —line — trend visualization
  • —bar — category comparison
  • —scatter — correlation
  • —pie — proportion of a whole

Multimodal extension

A 100-row multimodal pilot (generate_multimodal_pilot.py) generates rendered chart images (PNG) with chart-QA pairs. This extends the text-only dataset with visual reasoning: the model sees a rendered chart and answers questions about it. The pilot covers bar, grouped bar, stacked bar, line, multi-line, scatter, pie, donut, area, and mixed (bar + line overlay) chart types.

Files

FileRowsDescription
adaption_train_10k.jsonl10,000Training set (column-mapped for Adaption)
adaption_val_2k.jsonl2,000Validation set (held-out)
adaption_pilot_500.jsonl500Small pilot for quick iteration
train_10k.jsonl10,000Training set (raw, pre-Adaption-mapping)
val_2k.jsonl2,000Validation set (raw, pre-Adaption-mapping)
multimodal_pilot/100Rendered chart images + metadata

Schema

FieldDescription
instructionTask prompt
inputContext (data table, CSV, code, or chart metadata)
outputGround-truth completion (deterministic)
taskSub-task name
categoryAlways data_visualization
messagesChat-formatted version for SFT

Generation

Generated deterministically by generate_full.py with seed 42 (train) and seed 2024 (val). The Adaption column mapping is applied by prepare_adaption.py.

bash
python3 generate_full.py        # → train_10k.jsonl + val_2k.jsonl
python3 prepare_adaption.py     # → adaption_train_10k.jsonl + adaption_val_2k.jsonl
python3 generate_multimodal_pilot.py  # → multimodal_pilot/

Augmentation

The dataset is designed to be augmented via Adaption Adaptive Data with:

  • —reasoning_traces: enabled
  • —prompt_rephrase: disabled (rewrites system prompts, causing train/inference mismatch — learned from Part 1 post-mortem)
  • —deduplication: enabled

Usage

python
import json

with open("adaption_train_10k.jsonl") as f:
    for line in f:
        example = json.loads(line)
        # example["instruction"], example["input"], example["output"], example["task"]

License

Apache 2.0