/data-extractor
Extract numerical data from scientific figure images using Claude vision + OpenCV calibration. Supports 26+ plot
$ npx -y skills add ClawBio/ClawBio --skill data-extractor --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/data-extractor
Context preview
The summary Claude sees to decide when to auto-load this skill.
Extract numerical data from scientific figure images using Claude vision + OpenCV calibration. Supports 26+ plot
SKILL.md
data-extractor.SKILL.mdname: data-extractor
description: Extract numerical data from scientific figure images using Claude vision + OpenCV calibration. Supports 26+ plot
types including bar charts, scatter plots, forest plots, Kaplan-Meier curves, box plots, and more.
license: MIT
metadata:
version: 0.1.0
openclaw:
requires:
bins:
- python3
env:
- ANTHROPIC_API_KEY
always: false
emoji: ๐
homepage: https://github.com/ClawBio/ClawBio
os:
- darwin
- linux
install:
- kind: pip
package: anthropic
- kind: pip
package: opencv-python-headless
- kind: pip
package: numpy
- kind: pip
package: Pillow
- kind: pip
package: pydantic
- kind: pip
package: fastapi
- kind: pip
package: uvicorn๐ Data Extractor
You are the **Data Extractor**, a ClawBio skill for digitizing scientific figures. Your role is to extract numerical data from plot images for meta-analyses and systematic reviews.
When to Use This Skill
Route to this skill when the user:
- Provides an image file (PNG, JPG, TIFF) containing a scientific figure
- Asks to "extract data from a figure", "digitize a plot", "read values from a chart"
- Mentions "meta-analysis data extraction" or "figure digitization"
- Wants to convert a bar chart, scatter plot, or other figure to CSV/JSON
Capabilities
Supported Plot Types (26)
scatter, bar, line, box, violin, histogram, heatmap, forest, kaplan_meier, dot_strip, stacked_bar, funnel, roc, volcano, waterfall, bland_altman, paired, bubble, area, dose_response, manhattan, correlation_matrix, error_bar, table, other
Pipeline (4 phases)
1. **Panel Detection** โ Identify sub-panels in multi-panel figures (Claude vision) 2. **Pre-Analysis** โ Identify axes, scale (linear/log), legend entries, error bars (Claude tool calling) 3. **CV Calibration + Extraction** โ OpenCV detects markers/bars at pixel level, Claude extracts numerical data with calibration context 4. **Validation** โ Heuristic checks for axis range, series count, error bar polarity
Output Formats
- **CSV** โ One row per data point with series name, x/y values, error bars
- **JSON** โ Structured ExtractedData objects with full metadata
- **Web UI** โ Interactive table + SVG preview with editable cells
Usage
CLI
python data_extractor.py --image figure.png --output results/
python data_extractor.py --web --port 8765
python data_extractor.py --demo
API (importable)
from data_extractor_api import run
result = run(options={"image_path": "figure.png", "output_dir": "results/"})Web UI
Launch with `--web` flag. Upload images, draw boxes around plots, extract and edit data interactively.
Input Formats
- PNG, JPG, JPEG, TIFF image files
- Screenshots from papers, posters, slides
- Multi-panel composite figures (auto-detected and split)
Notes
- Requires ANTHROPIC_API_KEY environment variable
- Uses Claude Sonnet for pre-analysis/detection, Claude Opus for extraction
- OpenCV calibration improves accuracy for scatter/bar plots with clear markers
- Error bars are reported as ยฑ extent (delta from mean), not absolute positions
Read more
name: data-extractor
description: Extract numerical data from scientific figure images using Claude vision + OpenCV calibration. Supports 26+ plot
types including bar charts, scatter plots, forest plots, Kaplan-Meier curves, box plots, and more.
license: MIT
metadata:
version: 0.1.0
openclaw:
requires:
bins:
- python3
env:
- ANTHROPIC_API_KEY
always: false
emoji: ๐
homepage: https://github.com/ClawBio/ClawBio
os:
- darwin
- linux
install:
- kind: pip
package: anthropic
- kind: pip
package: opencv-python-headless
- kind: pip
package: numpy
- kind: pip
package: Pillow
- kind: pip
package: pydantic
- kind: pip
package: fastapi
- kind: pip
package: uvicorn๐ Data Extractor
You are the **Data Extractor**, a ClawBio skill for digitizing scientific figures. Your role is to extract numerical data from plot images for meta-analyses and systematic reviews.
When to Use This Skill
Route to this skill when the user:
- Provides an image file (PNG, JPG, TIFF) containing a scientific figure
- Asks to "extract data from a figure", "digitize a plot", "read values from a chart"
- Mentions "meta-analysis data extraction" or "figure digitization"
- Wants to convert a bar chart, scatter plot, or other figure to CSV/JSON
Capabilities
Supported Plot Types (26)
scatter, bar, line, box, violin, histogram, heatmap, forest, kaplan_meier, dot_strip, stacked_bar, funnel, roc, volcano, waterfall, bland_altman, paired, bubble, area, dose_response, manhattan, correlation_matrix, error_bar, table, other
Pipeline (4 phases)
1. **Panel Detection** โ Identify sub-panels in multi-panel figures (Claude vision) 2. **Pre-Analysis** โ Identify axes, scale (linear/log), legend entries, error bars (Claude tool calling) 3. **CV Calibration + Extraction** โ OpenCV detects markers/bars at pixel level, Claude extracts numerical data with calibration context 4. **Validation** โ Heuristic checks for axis range, series count, error bar polarity
Output Formats
- **CSV** โ One row per data point with series name, x/y values, error bars
- **JSON** โ Structured ExtractedData objects with full metadata
- **Web UI** โ Interactive table + SVG preview with editable cells
Usage
CLI
python data_extractor.py --image figure.png --output results/ python data_extractor.py --web --port 8765 python data_extractor.py --demo
API (importable)
from data_extractor_api import run
result = run(options={"image_path": "figure.png", "output_dir": "results/"})Web UI
Launch with `--web` flag. Upload images, draw boxes around plots, extract and edit data interactively.
Input Formats
- PNG, JPG, JPEG, TIFF image files
- Screenshots from papers, posters, slides
- Multi-panel composite figures (auto-detected and split)
Notes
- Requires ANTHROPIC_API_KEY environment variable
- Uses Claude Sonnet for pre-analysis/detection, Claude Opus for extraction
- OpenCV calibration improves accuracy for scatter/bar plots with clear markers
- Error bars are reported as ยฑ extent (delta from mean), not absolute positions
๐ฆ ClawBio - The first bioinformatics-native AI agent skill library. Local-first. Reproducible. Open. Free.
Other skills on clawbio.
- /affinity-proteomics
Unified analysis pipeline for affinity-based proteomics platforms โ Olink (PEA, NPX) and SomaLogic SomaScan (SOMAmer,
Open skill - /analyze-fasta
Synthetic ~120 aa protein sequence (CC0, no real organism)
Open skill - /ancestry-risk-profiler
Synthetic South Asian 23andMe profile with T2D, CAD, and hypertension risk alleles
Open skill - /archaic-introgression
Genomic coordinates of introgressed segments
Open skill - /article-data-fetcher
A test DOI pointing to a public GEO dataset
Open skill - /bgpt-mcp
Structured paper data with 25+ fields per result
Open skill

