# Matlab Plotting Skill

> Self-contained MATLAB scientific plotting skill. Use when the user asks Codex to choose, generate, adapt, render, export, or review MATLAB figures from CSV, Excel, MAT, table, matrix, or described data; when they need MATLAB CLI rendering; when they want an automatic plot choice, palette choice, PNG/SVG/PDF export, render report, or a publication-style figure workflow.

- **Type:** Skill
- **Install:** `agentstack add skill-kkkakania-matlab-plotting-skill-matlab-plotting-skill`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [Kkkakania](https://agentstack.voostack.com/s/kkkakania)
- **Installs:** 0
- **Category:** [Data & Analytics](https://agentstack.voostack.com/c/data-and-analytics)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [Kkkakania](https://github.com/Kkkakania)
- **Source:** https://github.com/Kkkakania/matlab-plotting-skill/tree/main/skills/matlab-plotting-skill

## Install

```sh
agentstack add skill-kkkakania-matlab-plotting-skill-matlab-plotting-skill
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# MATLAB Plotting Skill

## Overview

Use this skill to turn user data and a plotting goal into a rendered MATLAB
figure. The bundled MATLAB assets include 51 plotting schemes, a data-schema
inference layer, palette defaults, exporters, and a report writer.

This skill is self-contained. Do not rely on private local folders, external
plotting repositories, encrypted MATLAB files, or article image packs.
If local plotting folders are present, use them only to identify chart tasks and
read `docs/local-resource-intake.md` before turning any idea into public code.

## Workflow

1. Inspect the user's request and identify the communication task: trend,
   relationship, matrix, comparison, distribution, ranking, composition,
   multivariate, spatial/vector, or layout.
2. If the user provided a file, check whether it is CSV, Excel, or MAT. See
   `references/data-contract.md` when the data shape is unclear.
3. Choose the plot by reading `references/scheme-catalog.md` only when the
   built-in name/tag mapping is not enough. To inspect one scheme without
   opening MATLAB, use `--scheme-info `, `--scheme-info  --status`,
   or `--scheme-info-json  --status`.
   Read `references/example-prompts.md` when writing usage examples for a user.
   If the idea came from a private local plotting folder, write it as a public
   communication task first and check `docs/local-resource-intake.md` before
   touching code.
4. When the user needs to inspect file structure before choosing a plot, use
   `--inspect-data`, which calls `mpInspectData` and returns schema JSON.
5. When the user wants to inspect the choice before rendering, preview the
   selection with `--plan-only`, which calls `mpPlan` and returns JSON:

   ```bash
   skills/matlab-plotting-skill/scripts/render_with_matlab.sh --plan-only --data  --goal ""
   ```

   Use `--explain` instead of `--plan-only` when the user wants a concise
   terminal explanation rather than JSON.

6. Prefer the bundled CLI for rendering:

   ```bash
   skills/matlab-plotting-skill/scripts/render_with_matlab.sh --data  --goal "" --out  --formats png,svg
   ```

   Use `--scheme ` when the user asks for a specific scheme.

7. If MATLAB is missing, explain that the user needs MATLAB CLI and provide the
   exact command to run later. Do not claim a figure was rendered.
8. After rendering, report the selected scheme, output files, and any quality
   warnings from `render_report.md`. Use `render_report.json` when a script or
   follow-up automation needs structured metadata. Read
   `docs/cli-output-contract.md` before depending on JSON fields.

For a first-time user, mirror the sequence in
`docs/first-render-walkthrough.md`: run `scripts/doctor.sh` or
`render_with_matlab.sh --doctor --out ` when the checkout or installed
Skill is new or confusing, check MATLAB, inspect data, run `--plan-only`,
render PNG/SVG, then review the report and privacy checks.
Use `docs/troubleshooting.md` when MATLAB cannot be found, a render hangs, no
figure files appear, or the selected scheme looks wrong.

When writing user-facing summaries, reports, or documentation snippets, keep the
tone grounded, maintainer-style, and specific. Follow `docs/writing-style.md`:
say what works today, name the MATLAB boundary, and avoid unsupported adoption
or approval claims.

## MATLAB CLI

The renderer uses `MATLAB_BIN` when set, then falls back to `matlab` on `PATH`.
MATLAB-backed commands have a 600-second timeout by default. `--smoke-test`
auto-scales the timeout from the catalog size and prints the applied budget;
set `MP_MATLAB_TIMEOUT_SECONDS=0` only for deliberate long local renders.
On macOS, a common value is:

```bash
MATLAB_BIN=/Applications/MATLAB_R2025a.app/bin/matlab
```

Read `references/matlab-cli.md` for troubleshooting.
Read `docs/private-data-handling.md` before asking a user to share logs or
reports from private data.

## Selection Defaults

- Time column plus numeric values: trend schemes.
- Two numeric columns: scatter or density scatter.
- Numeric matrix: heatmap schemes.
- Category plus numeric values: grouped bar, box/jitter, or ranking schemes.
- Percent or part-whole language: composition schemes.
- Positive and negative values: diverging bar or positive-negative area.
- "Zoom", "event", "detail", or "local": zoomed inset line.
- "Paper", "panel", "overview", or "layout": multi-panel or annotated layout.
- "Spectrum", "impedance", "power", "energy", "harmonic", "block", or
  "workflow": check whether the public catalog already has a matching scheme;
  if not, describe the closest existing option and record a backlog task rather
  than importing a private local template.

When a MAT file has multiple plausible variables, list the candidates and ask
the user which variable to render instead of guessing.

## Safety Rules

- Keep generated scripts and outputs in the user's chosen project directory.
- Do not write into the skill directory during normal use.
- Do not copy raw private data into this repository.
- Treat local plotting collections as requirements sources only; do not copy
  their code, labels, screenshots, watermarks, binary artifacts, or author
  metadata.
- Do not introduce `.p`, `.fig`, committed `.mat`, `.docx`, `.pdf`, article
  screenshots, local absolute paths, email addresses, or provenance-unclear
  source files.
- Keep generated preview assets out of `skills/`, `scripts/`, and source or
  template directories; use reviewed output or gallery folders.
- Use synthetic data for smoke tests and examples.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [Kkkakania](https://github.com/Kkkakania)
- **Source:** [Kkkakania/matlab-plotting-skill](https://github.com/Kkkakania/matlab-plotting-skill)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-kkkakania-matlab-plotting-skill-matlab-plotting-skill
- Seller: https://agentstack.voostack.com/s/kkkakania
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
