Skip to content
Back to skills

Plotting Reporting

ASecurity

"Create Nilearn plots, interactive views, surface visualizations,

  • 247 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 8, 2026
datapythonapibackend

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 plotting-reporting --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Plotting Reporting?

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

Security grade badge for Plotting Reporting
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-plotting-reporting/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-plotting-reporting)

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: plotting-reporting
description: "Create Nilearn plots, interactive views, surface visualizations,
  cluster tables, and HTML reports while handling optional plotting dependencies
  and headless environments."
disable-model-invocation: true
metadata:
  disco-role: operating
license: BSD 3-Clause
---

# Plotting and Reporting

Use this sub-skill when a task asks for Nilearn visualization or reporting:
static brain plots, interactive HTML views, surface plots, design/event/matrix
figures, connectome displays, cluster tables, or generated HTML reports.

## Read First

- For function families, common signatures, return objects, `output_file`, and
  engine behavior, read [API Reference](references/api-reference.md).
- For practical plot/report recipes, read [Workflows](references/workflows.md).
- For optional dependency, headless, browser, threshold, colorbar, orientation,
  and report warnings, read [Troubleshooting](references/troubleshooting.md).
- For a no-network local sanity check, run
  `python scripts/smoke_plotting_reporting.py --help`.

## Route Here

- Choose between `plot_img`, `plot_anat`, `plot_epi`, `plot_roi`,
  `plot_prob_atlas`, `plot_stat_map`, `plot_glass_brain`, `plot_carpet`, or
  image-comparison helpers for static volume figures.
- Build connectome, marker, matrix, event, design-matrix, contrast-matrix, or
  design-correlation visualizations.
- Use `plot_surf`, `plot_surf_stat_map`, `plot_surf_roi`, `plot_img_on_surf`,
  `view_surf`, or `view_img_on_surf` after valid surface or volume inputs exist.
- Use `view_img`, `view_connectome`, or `view_markers` when the deliverable is
  an embeddable interactive HTML view rather than a static Matplotlib display.
- Produce `get_clusters_table` outputs, GLM HTML reports, or save/open
  `HTMLReport` objects and estimator reports.
- Diagnose plotting-specific optional dependencies such as Matplotlib, Plotly,
  Kaleido, Chrome, browser display, and Matplotlib backends.

## Route Elsewhere

- Use `../data-io-signal/SKILL.md` for loading, resampling, masking,
  unmasking, confound cleaning, or constructing NIfTI images before plotting.
- Use `../surface-workflows/SKILL.md` for mesh/data contracts,
  `SurfaceImage`, fsaverage helpers, and volume-to-surface projection details
  before visualization choices.
- Use `../glm-analysis/SKILL.md` for GLM fitting, contrasts, thresholding
  decisions, and statistical interpretation before plotting/reporting outputs.
- Use `../maskers-regions/SKILL.md` for masker setup, labels/maps extraction,
  region signals, and fitted masker objects before calling `generate_report`.
- Route package installation policy and broad environment repair to the root
  Nilearn troubleshooting guidance; keep this sub-skill focused on symptoms
  specific to plotting and report rendering.

## Fast Operating Rules

- In scripts and CI, set a non-interactive Matplotlib backend before importing
  `nilearn.plotting`, and prefer `output_file=` for static figures so displays
  close automatically.
- If you call static plotters without `output_file`, close returned display or
  figure objects with `.close()` or `matplotlib.pyplot.close()`.
- Keep interactive `view_*` outputs as HTML objects; save them with
  `.save_as_html(...)` rather than relying on a browser or notebook display.
- Treat Plotly surface PNG export as an optional extra: `engine="plotly"` needs
  Plotly, and static image export also needs Kaleido plus a compatible Chrome.
- Avoid network fetchers in plotting/report smoke examples unless the user
  explicitly asks for datasets; create tiny synthetic images or reuse inputs
  already supplied by the user.
- Document thresholding, `two_sided`, `cluster_threshold`, colorbar, and
  orientation choices when plots or cluster tables support decisions.

## Bundled Script

Run `python scripts/smoke_plotting_reporting.py` for a no-network smoke check
that creates a tiny synthetic image, saves a static plot headlessly, and tries a
cluster table. Use `--output-dir` to keep the generated files.

Files in this skill

  • SKILL.md3.9 KB
  • references/api-reference.md10 KB
  • references/troubleshooting.md8.5 KB
  • references/workflows.md7.5 KB
  • scripts/smoke_plotting_reporting.py3.9 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.