"Plot raster, spike-count, trace, and animation views for
Scanned 9/9/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill plotting --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Plotting?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-plotting)More formats (shields.io, HTML) on the badges page.
---
name: plotting
description: "Plot raster, spike-count, trace, and animation views for
time-first snnTorch spike tensors."
disable-model-invocation: true
metadata:
disco-role: operating
license: MIT
---
# Plotting
Use this sub-skill when the task is to visualize spike tensors with `snntorch.spikeplot` helpers rather than to train, encode, load datasets, or exchange NIR graphs.
## Route here for
- Raster plots from time-first binary spike tensors with `spikeplot.raster`.
- Output-neuron spike-count panels and spike-count animations with `spikeplot.spike_count`.
- Membrane/current traces, optionally with spike overlays, using `spikeplot.traces`.
- Image-like spike-frame animations with `spikeplot.animator` in notebooks or scripts.
- Headless matplotlib setup for CI, SSH, and batch jobs.
## Do not handle here
- Training loops, losses, surrogate gradients, or `utils.reset`: route to `encoding-training`.
- Spike encoding from raw data with `spikegen`: route to `encoding-training`.
- NIR export/import: route to `nir-interoperability`.
- Dataset download/loading and legacy neuromorphic dataset wrappers: route to `spikevision`.
- Core neuron construction or state lifecycle beyond using recorded `spk_rec`/`mem_rec`: route to `core-neurons`.
## Operating workflow
1. Identify the recorded tensor: most `spikeplot` workflows use one sample with time as dimension 0, such as `[num_steps, num_outputs]` for spike counts/traces or `[num_steps, height, width]` for frame animations.
2. Normalize shapes before plotting. For classic rasters, prefer `[num_steps, num_neurons]`; flatten trailing spatial dimensions if needed. For minibatch recordings, index one sample first, for example `spk_rec[:, sample_idx].detach().cpu()`.
3. Choose the helper and exact arguments from [API reference](references/api-reference.md); use [workflows](references/workflows.md) for notebook and headless-script patterns.
4. For `spike_count`, pass a Python list/tuple/array of labels whose length matches the output dimension; do not pass a torch tensor as `labels`.
5. For servers or CI, set an Agg backend before importing `matplotlib.pyplot`, create explicit `fig, ax` objects, and close figures after rendering.
6. If plotting fails or animations do not save/display, use [troubleshooting](references/troubleshooting.md) before changing model or tensor semantics.
## Bundled script
- [`scripts/spikeplot_smoke.py`](scripts/spikeplot_smoke.py): headless Agg smoke that builds synthetic spike/trace tensors, exercises raster, spike-count, traces, and a lightweight animation object, and prints a pass summary.
Start with [workflows](references/workflows.md) for practical recipes and [API reference](references/api-reference.md) for live snnTorch 1.0.0 signatures.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!