Skip to content
Back to skills

Visualization

ASecurity

Design and produce data visualizations, Base chart views, financial K-line charts, network graphs, AntV infographics, and Mermaid diagrams across Pod pages, Applets, Chat, PDF, PPTX, DOCX, and channel deliveries.

  • 179 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
ai-agentsgoreactexpress

Works with

  • terminal
  • cli

Security analysis

A100/100

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

Scanned November 7, 2026

npx -y skills add AgentBull/ankole --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/agentbull-visualization/badge)](https://www.skillsdirectory.com/skills/agentbull-visualization)

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: "Design and produce data visualizations, Base chart views, financial K-line charts, network graphs, AntV infographics, and Mermaid diagrams across Pod pages, Applets, Chat, PDF, PPTX, DOCX, and channel deliveries."
default_enabled: true
ankole-runtime: any
category: productivity
tags: [Visualization, Charts, K-Line, Infographic, Mermaid, Graph]
---

# Visualization

This Skill owns how Ankole selects a visual grammar, applies palette and directional conventions, embeds live charts in Pod pages and Applets, writes `<mermaid>` and `<infographic>` diagram blocks, and exports publication-grade SVG or PNG figures with `ankole-viz`.

Read `/drive/DESIGN.md` (or the workspace design contract) first when styling standalone deliverables. Read only the reference file under `references/` that matches the visual grammar you need:

- `references/statistical-g2.md` — categorical, temporal, distribution, dual-axis, hierarchical, and flow charts (`AnkoleChart`, Base `chart` view, `ankole-viz chart`)
- `references/financial-kline.md` — OHLCV candlesticks, intraday baselines, synchronized volume/MACD/RSI sub-panes, trade markers, and yield curves (`AnkoleFinancialChart`, `recordsToFinancialSeries`, `ankole-viz kline`)
- `references/infographic-dsl.md` — structured narrative diagrams, SWOT, timelines, roadmaps, and comparison trees (`<infographic>`, `AnkoleInfographic`, `ankole-viz infographic`)
- `references/graph-g6.md` — entity-relationship networks, hierarchies, radial neighborhoods, and combo clusters (`AnkoleGraph`, `ankole-viz graph`)
- `references/mermaid.md` — procedural flowcharts, sequence diagrams, state machines, and ER diagrams (`<mermaid>`, `ankole-viz mermaid`)

## Choose the right grammar and surface

Match the cognitive question to one grammar first, then pick the delivery surface:

| Cognitive question | Visual grammar | Pod / Chat / Knowledge surface | Offline file export (`background_job`) |
| --- | --- | --- | --- |
| Headline KPI and delta | Stat & sparkline | Base `chart` (`stat`), Applet `AnkoleStatCard` + `AnkoleSparkline` | `ankole-viz chart` or native table/card |
| Category comparison, trend, share, correlation, distribution | Statistical (AntV G2 v5) | Single-table: Base `chart` view + Doc `<embed>`. Multi-table or custom: Applet `AnkoleChart` | `ankole-viz chart --spec ... --data ... -o fig.svg` |
| OHLCV price action, session gaps, indicators, yield curve | Financial (Lightweight Charts v5) | Applet `AnkoleFinancialChart` | `ankole-viz kline --spec ... --data ... -o kline.png` |
| Multi-hop topology, clusters, hierarchy | Network graph (AntV G6 v5) | Applet `AnkoleGraph` | `ankole-viz graph --spec ... --data ... -o graph.svg` |
| Stages, SWOT, pros/cons, executive takeaways | Narrative infographic (`@antv/infographic`) | Doc `<infographic>` (` ```infographic `), Chat ` ```infographic `, Applet `AnkoleInfographic` | `ankole-viz infographic --input ... -o info.svg` |
| Branching control flow, RPC sequence, state transitions, schema ER | Procedural diagram (Mermaid via Pele) | Doc `<mermaid>`, Knowledge ` ```mermaid `, Chat ` ```mermaid ` | `ankole-viz mermaid --input ... -o flow.svg` |

Never convert an explicit flow, sequence, state machine, or ER diagram into ASCII box art (`+---+`, `|-->|`), and never fabricate raw SVG coordinates by hand when one of these grammars expresses the structure directly.

## Palette and directional rules

1. **Categorical series & 1D focus**: Honor explicit `:select` field option colors first; otherwise assign `{colors.chart-1}` through `{colors.chart-5}` (Cobalt, Celadon, Ochre, Berry, Mulberry — Okabe–Ito CUD separable across protanopia, deuteranopia, and tritanopia) in global rank order. For 1D `column` or `bar` rankings without a second `series` dimension or explicit option colors, keep all regular bars in uniform `{colors.chart-1}` so length carries magnitude without decorative rainbow hues, while coloring `"Other"` (`--chart-other`) and unassigned `null` / `"Empty"` (`--chart-empty`) in distinct neutral grays. Never merge missing values into `"Other"`, and never treat `0` or `false` as empty.
2. **Continuous & diverging scales**: Sequential heatmaps use monotonic luminance ramps matched to figure-ground polarity (dark-is-more on light paper, light-is-more on dark graphite). Mixed negative-and-positive heatmaps automatically switch to a zero-anchored symmetric diverging scale (`--chart-down` ↔ neutral surface `0` ↔ `--chart-up`). Waterfall charts render increments in `--chart-up`, decrements in `--chart-down`, and summary totals in neutral slate `--chart-total`.
3. **Directional movement (`intl` default, `cn` for Mainland China A-shares only)**:
   - Default across all business metrics, global equities, crypto, FX, commodities, and macro series: **green-up / red-down** (`marketConvention: "intl"`, `{colors.chart-up}` for `+`, `{colors.chart-down}` for `-`).
   - Swap to **red-up / green-down** (`marketConvention: "cn"`) **only** when displaying Mainland China A-share (`A股`) equities or A-share indices.
   - Pair directional colors with explicit `+`/`-` or `▲`/`▼` glyphs and `tabular-nums` so sign survives grayscale print and color-vision differences. Keep `chart-up` and `chart-down` separate from operational `success` and `error` tokens.

## Live Pod views vs. Applets

- **Single-table declarative charts**: Create a shared `chart` view on the Base table with `ankole-pod base.create_view` (`type: "chart"`, `config: { chart: { chart_type, query, encoding?, display? } }`), then embed `<embed ref="<base-page-id>" table="<table-id>" view="<view-id>" />` on its own line in the `:doc` Page—or pass an inline JSON `ViewConfig` in `view` when the chart configuration belongs exclusively to one report document.
- **Multi-table joins, interactive financial terminals, or custom simulations**: Build a React Applet with `ankole-pod applet init|build|publish`, importing `AnkoleStatCard`, `AnkoleSparkline`, `AnkoleChart`, `AnkoleFinancialChart`, `AnkoleGraph`, or `AnkoleInfographic` from the root `@ankole/uikit` package and `recordsToFinancialSeries`, `densifyTimeBuckets`, or `formatMetricValue` from `@ankole/applet-sdk`.

## Offline export (`ankole-viz`) and channel rules

Run `ankole-viz --help` inside a Background Agent Job when generating image assets for PDF, PPTX, DOCX, HTML reports, or chat attachments:

- Pass tabular inputs directly from disk via `--data <path.csv|tsv|json|jsonl>` instead of pasting large datasets into inline JSON arguments.
- Validate Mermaid or Infographic syntax cheaply without launching a browser via `ankole-viz validate --kind mermaid|infographic --input <file>`.
- **PDF and print safety**: Typst (`resvg`) and WeasyPrint require Print-Safe SVGs (no `<foreignObject>`, no `var(--...)` CSS variables, no external URLs). `ankole-viz` automatically resolves theme tokens and, when `--pdf-safe` is active or a template emits `<foreignObject>`, rasterizes at `1920px` width (`300 DPI` on an A4 text block) to lossless `.png` and reports the output path in JSON stdout. `kline` always exports lossless `.png` with attribution intact.
- **Feishu / Lark and messaging channels**: Deliver `.png` (`--dpr 2`) for inline chat viewing so mobile and desktop clients render an immediate image preview; attach `.svg` only when the user asks for editable vector source files.

Files in this skill

  • SKILL.md7.2 KB
  • references/financial-kline.md3.1 KB
  • references/graph-g6.md1.6 KB
  • references/infographic-dsl.md3.1 KB
  • references/mermaid.md2.5 KB
  • references/statistical-g2.md3.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…

Newsletter

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