Skip to content
Back to skills

Visualization

ASecurity

Plot PPO reward logs and compose GIFs from saved frame images.

  • 247 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
toolspythonbashapibackend

Works with

  • api

Security analysis

A100/100

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

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill visualization --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Visualization?

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

Security grade badge for Visualization
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-visualization-1a2d1b61/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-visualization-1a2d1b61)

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: visualization
description: "Plot PPO reward logs and compose GIFs from saved frame images."
metadata:
  disco-role: operating
disable-model-invocation: true
license: MIT
---

# Visualization

Use this sub-skill when the user wants to plot training rewards, compare multiple runs, compose a GIF from saved frames, inspect the CSV log schema, or understand why a plotting or GIF step failed.

Do not use this sub-skill for training-loop changes or pretrained checkpoint evaluation. Route those tasks to the sibling sub-skills. Route low-level PPO class behavior to the root [API reference](../../references/api-reference.md).

## What this sub-skill owns

- The `PPO_logs/<env_name>/PPO_<env_name>_log_<run_num>.csv` schema.
- Reward smoothing and average-over-runs plotting.
- Figure output naming and directory layout.
- GIF composition from already-saved image frames.
- Headless plotting and image-ordering failure modes.

## Quick workflow

1. **Check the log or frame layout first.** Use the bundled helpers from this sub-skill directory:

   ```bash
   python scripts/plot_training_logs.py --help
   python scripts/make_training_gif.py --help
   ```

2. **Plot logs from one environment.** If your logs live in the default layout, point the helper at the environment name and log root. The helper will discover the run CSVs and write a PNG into the figure directory.

3. **Compose a GIF from frames.** The GIF helper expects an ordered set of JPEG or PNG frames, usually already saved by a separate render step.

4. **Keep frame capture separate from composition.** Environment rendering depends on Gym, Roboschool, or another environment backend. GIF composition only needs Pillow and image files.

## Core references

- [Logs, plots, and GIFs](references/logs-plots-and-gifs.md) - CSV schema, smoothing choices, output layout, and helper usage.
- [Troubleshooting](references/troubleshooting.md) - missing columns, missing frames, headless plotting, and image or Pillow problems.
- [Root PPO API reference](../../references/api-reference.md) - shared PPO behavior only when you need to trace outputs back to the model.

## Validation commands

Safe checks for this sub-skill should stay small and deterministic:

```bash
python scripts/plot_training_logs.py --help
python scripts/make_training_gif.py --help
python -m py_compile scripts/plot_training_logs.py scripts/make_training_gif.py
```

A tiny CSV or tiny image fixture is enough to verify the helpers. Do not default to a live environment render unless the user explicitly needs that dependency-bound path.

Files in this skill

  • SKILL.md2.5 KB
  • references/logs-plots-and-gifs.md2 KB
  • references/troubleshooting.md1.9 KB
  • scripts/make_training_gif.py3.7 KB
  • scripts/plot_training_logs.py7.6 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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.