Skip to main content

data-extractor

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.

Source facts

Repository
beita6969/ScienceClaw
Last source activity
March 12, 2026 at 04:53
Detected SKILL.md language
English
Stars
907
Forks
104

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
8 files

Showing SKILL.md

SKILL.md
Source instructions ยท Read-only preview
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.
version
0.1.0
metadata
{"openclaw":{"requires":{"bins":"[Truncated]","env":"[Truncated]","config":"[Truncated]"},"always":false,"emoji":"๐Ÿ“Š","homepage":"https://github.com/ClawBio/ClawBio","os":["darwin","linux"],"install":["[Truncated]","[Truncated]","[Truncated]","[Truncated]","[Truncated]","[Truncated]","[Truncated]"]}}
# ๐Ÿ“Š 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 ```bash python data_extractor.py --image figure.png --output results/ python data_extractor.py --web --port 8765 python data_extractor.py --demo ``` ### API (importable) ```python from 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
View on GitHub