Agent skill

Chart Visualization

by Citrus-bit in Citrus-bit/Anaxa

A skill your agent uses whenever the user wants a chart, graph, plot, dashboard visual, or asks to visualize structured numbers, trends, comparisons, proportions, distributions, correlations…

MITAuto-check passedData & Analytics

Install Chart Visualization

skills CLI
$ npx skills add Citrus-bit/Anaxa --skill chart-visualization -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Citrus-bit/Anaxa chart-visualization --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Citrus-bit/Anaxa.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/public/chart-visualization .claude/skills/chart-visualization && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
chart-visualization
GitHub stars
120
Token cost
~2.4k tokens
SKILL.md length
956 words
Files
32 (incl. scripts, references)
Skills in repo
15
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses whenever the user wants a chart, graph, plot, dashboard visual, or asks to visualize structured numbers, trends, comparisons, proportions, distributions, correlations…

  • Works in 8 steps: Normalize the Request Into a Chart Brief → Ground the Data Before Chart Selection → Intelligent Chart Selection → …
  • The user wants a chart
  • SKILL.md covers Workflow, Reference Material, Color Palettes & Presets and Quality Standards (Mandatory), plus 1 more section
  • Calls node

What it does

Chart Visualization is an agent skill from Citrus-bit/Anaxa. Use this skill whenever the user wants a chart, graph, plot, dashboard visual, or asks to visualize structured numbers, trends, comparisons, proportions, distributions, correlations, rankings, or flows. This skill must also trigger when the user describes a reporting need in natural language without explicitly saying "chart". It converts the request into a validated chart specification, checks that the chosen chart type actually matches the data story, and only then generates the visual.

Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 32 other files, including scripts and reference files (for example `references/chart_presets.json`, `references/color_palettes.json` and `references/generate_area_chart.md`).

It sits in Data & Analytics. The repository describes itself as: Anaxa 是一个面向科研工作流的开源智能体系统。它不是单纯的聊天机器人,也不是无人监管的自动发论文机器,而是把文献检索、证据审计、实验执行、论文写作、同行评审式检查和最终产物打包放进同一个可追踪的研究生命周期中。 The licence is MIT.

When your agent uses it

  • The user wants a chart
  • Dashboard visual
  • Asks to visualize structured numbers
  • The user describes a reporting need in natural language without explicitly saying chart

Example prompts

  • “/chart-visualization”

Requirements

  • Node.js

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Normalize the Request Into a Chart Brief
  2. Ground the Data Before Chart Selection
  3. Intelligent Chart Selection
  4. Parameter Extraction
  5. Build a Validated Chart Spec
  6. Validate Before Generation
  7. Chart Generation
  8. Result Return

What it can do on your machine

Read from SKILL.md and the folder at commit d57c708. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/, which the agent can run.

    Shell commands in SKILL.md call:

    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Chart Visualization loads about 2.4k tokens when it runs, and up to ~11k if it reads all its reference files. Until then it costs about 128 tokens; SKILL.md has 956 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~128
When it runs · the whole SKILL.md, loaded when a task matches
~2.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~11k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from Citrus-bit/Anaxa at commit d57c708, republished under its MIT licence (© Citrus-bit). 956 words, ~2,425 tokens.

Download SKILL.mdSave it as .claude/skills/chart-visualization/SKILL.md (or your agent's skills folder). This skill also uses 31 other files; get the full folder from GitHub.
name
chart-visualization
description
Use this skill whenever the user wants a chart, graph, plot, dashboard visual, or asks to visualize structured numbers, trends, comparisons, proportions, distributions, correlations, rankings, or flows. This skill must also trigger when the user describes a reporting need in natural language without explicitly saying "chart". It converts the request into a validated chart specification, checks that the chosen chart type actually matches the data story, and only then generates the visual.
dependency.nodejs
>=18.0.0

Chart Visualization Skill

This skill provides a comprehensive workflow for transforming data into visual charts. It handles chart selection, parameter extraction, and image generation.

Workflow

To visualize data, follow these steps:

1. Normalize the Request Into a Chart Brief

Before choosing any chart, reduce the user's request into a brief with these fields:

json
{
  "goal": "What decision or comparison the chart should support",
  "audience": "executive | analytical | operational | academic | unknown",
  "data_story": "trend | comparison | composition | distribution | relationship | flow | geography | hierarchy",
  "source_data_state": "explicit data provided | partially described | no data",
  "must_show": ["metrics or categories that must appear"],
  "constraints": ["units, time grain, brand colors, report context, etc."]
}

If any of these are ambiguous enough to affect chart correctness, call ask_clarification before generating.

2. Ground the Data Before Chart Selection
  • If the user uploaded CSV/XLSX or described tabular data, use data-analysis first to inspect schema and derive the exact rows/columns for charting.
  • If the request contains only prose and no reliable numbers, do not invent plausible values just to make a chart. Ask for the missing data or clearly state that you can only produce a conceptual mock chart.
  • Always produce a clean data array before generation. The final chart spec must be reproducible from that array alone.
3. Intelligent Chart Selection

Analyze the grounded data and the chart brief to determine the most appropriate chart type. Use the following guidelines (and consult references/ for detailed specs):

  • Time Series: Use generate_line_chart (trends) or generate_area_chart (accumulated trends). Use generate_dual_axes_chart for two different scales.
  • Comparisons: Use generate_bar_chart (categorical) or generate_column_chart. Use generate_histogram_chart for frequency distributions.
  • Part-to-Whole: Use generate_pie_chart or generate_treemap_chart (hierarchical).
  • Relationships & Flow: Use generate_scatter_chart (correlation), generate_sankey_chart (flow), or generate_venn_chart (overlap).
  • Maps: Use generate_district_map (regions), generate_pin_map (points), or generate_path_map (routes).
  • Hierarchies & Trees: Use generate_organization_chart or generate_mind_map.
  • Specialized:
    • generate_radar_chart: Multi-dimensional comparison.
    • generate_funnel_chart: Process stages.
    • generate_liquid_chart: Percentage/Progress.
    • generate_word_cloud_chart: Text frequency.
    • generate_boxplot_chart or generate_violin_chart: Statistical distribution.
    • generate_network_graph: Complex node-edge relationships.
    • generate_fishbone_diagram: Cause-effect analysis.
    • generate_flow_diagram: Process flow.
    • generate_spreadsheet: Tabular data or pivot tables for structured data display and cross-tabulation.
4. Parameter Extraction

Once a chart type is selected, read the corresponding file in the references/ directory (e.g., references/generate_line_chart.md) to identify the required and optional fields. Extract the data from the user's input and map it to the expected args format.

5. Build a Validated Chart Spec

Before running the generator, create a chart spec with this structure:

json
{
  "tool": "generate_chart_type_name",
  "args": {
    "data": [],
    "title": "",
    "theme": "default",
    "style": {},
    "axisXTitle": "",
    "axisYTitle": ""
  },
  "intent": {
    "data_story": "trend",
    "reason_for_choice": "Line chart fits sequential time-based change.",
    "source_summary": "Derived from monthly revenue totals grouped from Orders table.",
    "validation_notes": [
      "x field is temporal",
      "y field is numeric",
      "title matches metric and grain"
    ]
  }
}

Rules:

  • intent.data_story must agree with the selected chart type.
  • intent.reason_for_choice must explain why this chart is a better fit than obvious alternatives.
  • intent.source_summary must say where the plotted data came from.
  • intent.validation_notes must explicitly mention the key field checks you performed.
6. Validate Before Generation

Do not call generate.js until these checks are true:

  • The selected chart type matches the requested story.
  • Required fields for that chart type exist in every row.
  • Numeric fields are actually numeric.
  • Axis titles or labels are present for charts that use axes.
  • Pie charts use 6 slices or fewer, or you aggregated a remainder bucket.
  • Bar/column charts do not imply a misleading truncated scale.
  • Titles describe the takeaway or exact metric, not a vague topic label.

If any check fails, revise the spec or ask for clarification instead of generating a wrong chart.

7. Chart Generation

Invoke the scripts/generate.js script with a JSON payload.

Payload Format:

json
{
  "tool": "generate_chart_type_name",
  "args": {
    "data": [...],
    "title": "...",
    "theme": "...",
    "style": { ... }
  }
}

Execution Command:

bash
node ./scripts/generate.js '<payload_json>'
8. Result Return

The script will output the URL of the generated chart image. Return the following to the user:

  • The image URL.
  • The complete validated spec used for generation.
  • A one-paragraph explanation of why this chart type was chosen.

Reference Material

Detailed specifications for each chart type are located in the references/ directory. Consult these files to ensure the args passed to the script match the expected schema.

Color Palettes & Presets

Show full SKILL.md (394 more words)Show less
Professional Color Palettes

Read references/color_palettes.json for 12 pre-built professional palettes. Select a palette that matches the audience and context:

  • business-blue: Corporate reports, dashboards
  • tech-vibrant: SaaS products, startup pitches
  • medical-clinical: Healthcare, clinical data
  • nature-earth: Sustainability, environmental data
  • accessible-high-contrast: Public-facing, accessibility-critical
  • categorical-distinct: Multi-series comparisons (colorblind-safe)
  • dark-mode: Dark dashboards, monitoring

Usage: Pass the palette's colors array directly as style.palette in the chart args.

Chart Presets

Read references/chart_presets.json for 5 scenario presets with recommended chart types, styles, and guidelines:

  • executive-dashboard: KPI charts for executives
  • technical-report: Detailed charts for engineering teams
  • marketing-report: Engaging charts for growth metrics
  • financial-analysis: Conservative charts for financial data
  • dark-dashboard: Dark-themed monitoring charts

Usage: Use the preset's style object as a starting point for your chart configuration.

Quality Standards (Mandatory)

Before Generation — Clarify Requirements

If ANY of the following are unclear, call ask_clarification BEFORE generating:

  • What story should the chart tell? (trend, comparison, distribution, composition)
  • Who is the audience? (executive summary vs. technical detail)
  • Are there brand colors or style preferences?
  • What is the output context? (report, dashboard, presentation slide)
  • What exact fields or numbers should be plotted?
Chart Design Checklist

Apply these rules when selecting chart type and configuring args:

  1. Data integrity: Never truncate Y-axis without explicit justification. Start at 0 for bar/column charts. Never fabricate missing quantitative data.
  2. Chart type fit: Time series → line/area. Comparison → bar/column. Part-to-whole → pie (≤6 slices) or treemap. Distribution → histogram/boxplot/violin. Correlation → scatter.
  3. Avoid anti-patterns: No 3D charts. No pie charts with >6 slices. No dual Y-axis without clear labeling. No chartjunk (unnecessary gridlines, decorations, borders).
  4. Color: Max 5 colors. Use hex codes in style.color. Ensure color-blind safe palette (avoid red-green only encoding).
  5. Labels: Add title. Include data labels for key values. Annotate anomalies or inflection points. Axis-based charts must include axis titles unless the meaning is already explicit in the rendered labels.
  6. Readability: Font size ≥12pt for labels, ≥16pt for title. Sufficient contrast against background.
After Generation — Self-Review

Before returning the chart to the user, verify:

  • Chart type matches the data story (not just "looks nice")
  • The plotted fields match the user's requested metric/category/time grain
  • All axes are labeled with units
  • Color palette is harmonious and accessible
  • No misleading visual encoding (area ≠ value distortion)
  • Title clearly states the insight, not just the topic

If any check fails, adjust args and regenerate.

License

This SKILL.md is provided by antvis/chart-visualization-skills. Licensed under the MIT License.

© Citrus-bit, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 31 other files (scripts, references) in skills/public/chart-visualization of Citrus-bit/Anaxa.

  • SKILL.md
  • references/chart_presets.json
  • references/color_palettes.json
  • references/generate_area_chart.md
  • references/generate_bar_chart.md
  • references/generate_boxplot_chart.md
  • references/generate_column_chart.md
  • references/generate_district_map.md
  • references/generate_dual_axes_chart.md
  • references/generate_fishbone_diagram.md
  • references/generate_flow_diagram.md
  • references/generate_funnel_chart.md
  • references/generate_histogram_chart.md
  • references/generate_line_chart.md
  • references/generate_liquid_chart.md
  • references/generate_mind_map.md
  • references/generate_network_graph.md
  • references/generate_organization_chart.md
  • references/generate_path_map.md
  • references/generate_pie_chart.md
  • … and 12 more

Open the folder on GitHubat commit d57c708

Compare with similar skills

Chart Visualization next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Chart Visualization compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Chart Visualization this skillCitrus-bit/Anaxa120—~2.4kAutomated safety check: PassMIT
TimesFM Forecastinggoogle-research/timesfm34k—~4.7kAutomated safety check: PassApache-2.0
AI Daily DigestvigorX777/ai-daily-digest1.6k—~1.3kAutomated safety check: PassNone
Geo SleuthOldcircle/geo-sleuth1.3k—~6.1kAutomated safety check: PassMIT
Agent Session Monitorhigress-group/higress9.5k—~3.3kAutomated safety check: PassApache-2.0
Chart Visualizationstophobia/deerflow2.0-enhanced820—~2.1kAutomated safety check: PassMIT

Similar skills

  • TimesFM Forecasting

    google-research/timesfm

    Forecasts any univariate time series zero-shot with Google's TimesFM model, returning point forecasts and calibrated prediction intervals without training.

    34k GitHub stars~4.7k tokensUpdated 8 days ago
    Data & AnalyticsAuto-check passed
  • AI Daily Digest

    vigorX777/ai-daily-digest

    Fetches RSS feeds from 90 top Hacker News blogs (curated by Karpathy), uses AI to score and filter articles, and generates a daily digest in Markdown with Chinese-translated titles, category…

    1.6k GitHub stars~1.3k tokensUpdated 7 mo ago
    Data & AnalyticsAuto-check passed
  • Geo Sleuth

    Oldcircle/geo-sleuth

    Geolocate or chronolocate a photo with tool-verified reasoning (where was this taken / when was it taken / photo geolocation / geo-guessing).

    1.3k GitHub stars~6.1k tokensUpdated today
    Data & AnalyticsAuto-check passed
  • Agent Session Monitor

    higress-group/higress

    Real-time agent conversation monitoring - monitors Higress access logs, aggregates conversations by session, tracks token usage.

    9.5k GitHub stars~3.3k tokensUpdated 3 days ago
    Data & AnalyticsAuto-check passed
  • Chart Visualization

    stophobia/deerflow2.0-enhanced

    This skill should be used when the user wants to visualize data.

    820 GitHub stars~2.1k tokensUpdated 6 mo ago
    Data & AnalyticsAuto-check passed
  • Tufte Chart

    gnurio/tufte-vdqi-plugin

    Render a real, publication-ready data graphic (SVG or HTML) that obeys Tufte's principles — minimal ink, range-frame axes, direct labels, honest proportions.

    309 GitHub stars~2.1k tokensUpdated 2 mo ago
    Data & AnalyticsAuto-check passed

More from Citrus-bit/Anaxa

All 15 skills in this repo
  • Nature Figure

    Citrus-bit/Anaxa

    Submission-grade Nature/high-impact journal figure workflow for Python or R.

    120 GitHub starsUsed in 2 repos~2.7k tokens
    Auto-check passed
  • Claude To Medrixflow

    Citrus-bit/Anaxa

    Interact with MedrixFlow AI agent platform via its HTTP API.

    120 GitHub stars~1.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Fireworks Tech Graph

    Citrus-bit/Anaxa

    A skill your agent uses when the user wants to create any technical diagram - architecture, data flow, flowchart, sequence, agent/memory, or concept map - and export as SVG+PNG.

    120 GitHub stars~5.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Bootstrap

    Citrus-bit/Anaxa

    Generate a personalized SOUL.md through a warm, adaptive onboarding conversation.

    120 GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Deep Research

    Citrus-bit/Anaxa

    A skill your agent uses for general web research that needs current online information, multiple source angles, and synthesis, when no more specific research skill applies.

    120 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • A skill your agent uses for empirical social-science research, applied economics, public policy, education, finance, management, sociology, psychology, epidemiology, or public-health data studies.

    120 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed

Questions about Chart Visualization

What does Chart Visualization do?

A skill your agent uses whenever the user wants a chart, graph, plot, dashboard visual, or asks to visualize structured numbers, trends, comparisons, proportions, distributions, correlations…. Chart Visualization is an agent skill from Citrus-bit/Anaxa. Use this skill whenever the user wants a chart, graph, plot, dashboard visual, or asks to visualize structured numbers, trends, comparisons, proportions, distributions, correlations, rankings, or flows.

When should I use Chart Visualization?

Chart Visualization fits situations like: the user wants a chart; dashboard visual; asks to visualize structured numbers; the user describes a reporting need in natural language without explicitly saying chart.

How do I install Chart Visualization in Claude Code?

Run `npx skills add Citrus-bit/Anaxa --skill chart-visualization -a claude-code`. Or copy the skill folder (skills/public/chart-visualization in Citrus-bit/Anaxa) into .claude/skills/chart-visualization in your project. Claude Code loads it when a task matches its description.

How do I install Chart Visualization in Codex?

Run `npx skills add Citrus-bit/Anaxa --skill chart-visualization -a codex`. Or copy the skill folder (skills/public/chart-visualization in Citrus-bit/Anaxa) into .agents/skills/chart-visualization in your project. Codex loads it when a task matches its description.

Can I use Chart Visualization in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Citrus-bit/Anaxa --skill chart-visualization -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/chart-visualization, .gemini/skills/chart-visualization, .github/skills/chart-visualization and .opencode/skills/chart-visualization in your project.

What does Chart Visualization need to run?

Going by SKILL.md and its folder, Chart Visualization needs the command-line tools its instructions call (node). Our summary lists: Node.js.

Does Chart Visualization access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Chart Visualization safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Chart Visualization use?

Chart Visualization is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Chart Visualization use?

About 2.4k tokens (SKILL.md is roughly 9.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8.9k tokens, read only when the agent opens those files.

What are the alternatives to Chart Visualization?

Skills that share tags, products or a category with Chart Visualization: TimesFM Forecasting (google-research/timesfm, 34k stars), AI Daily Digest (vigorX777/ai-daily-digest, 1.6k stars), Geo Sleuth (Oldcircle/geo-sleuth, 1.3k stars) and Agent Session Monitor (higress-group/higress, 9.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Chart Visualization?

Citrus-bit (a GitHub user) maintains it in Citrus-bit/Anaxa, which has 120 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on September 7, 2026.

Source: Citrus-bit/Anaxa on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.