Skip to content
Back to skills

Data Extractor

ASecurity

Extract numerical data from scientific figure images using Claude vision + OpenCV calibration. Supports 26+ plot

  • 17 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 4, 2026
ai-agentspythonbashfastapigitapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 12 files and shows the line behind each finding

Scanned September 4, 2026

npx -y skills add gabrielmoreira/agent-skills-mirror --skill data-extractor --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Data Extractor?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Data Extractor
[![Security: A β€” Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-data-extractor/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-data-extractor)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
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
```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 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

Files in this skill

  • SKILL.md3.1 KB
  • data_extractor.py2.7 KB
  • data_extractor_api.py3.4 KB
  • data_extractor_core/__init__.py66 B
  • data_extractor_core/cv_calibration.py13.3 KB
  • data_extractor_core/models.py2.3 KB
  • requirements.txt16 B
  • tests/test_extractor.py5.3 KB
  • web/app.js85.3 KB
  • web/index.html4.8 KB
  • web/server.py10.3 KB
  • web/styles.css4.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…