Skills claude-office-skills skills

chart-designer

Use it when:
You have data for a dashboard, report or presentation and aren't sure which chart tells its story best.
It does:
Matches what you want to show, such as a comparison, composition, distribution, relationship or flow, to a chart through a decision tree and selection tables.
You get:
A chart design write-up: the recommended chart, ECharts and Chart.js configurations, colors and type sizes, the best practices applied and alternative charts.
Doesn't:
Render charts or read your files: you paste its configurations into your own tool.
Includes:
Four palettes, one of them colorblind-friendly, and ECharts snippets for bar, line, pie and scatter charts.

TL;DR

From Claude Office Skills. You describe your data, the story it should tell, your audience and where the chart will appear. The agent picks a chart from tables grouped by purpose (comparison, trend, distribution, part-to-whole, and specialized charts such as funnel, gauge, heatmap, radar and Sankey) and a decision tree: bars to compare items, lines over time, pie or donut only for five items or fewer, a treemap for hierarchies, a histogram or box plot for distributions, scatter or bubble charts for relationships, a funnel or Sankey for flows. Its write-up gives the recommended chart with ECharts and Chart.js configurations, a color palette and type sizes, the best practices it applied and alternatives for other conditions; it also offers Excel chart setup instructions and CSS styling tips. The rules it applies: little ink that isn't data, clear titles and labeled axes with units, bar charts starting at zero, consistent scales, seven colors at most, attention to colorblind viewers, and tooltips, zoom or drill-down where data is dense.

Summarizes the skill at 9c4c7d5.

npx skills add https://github.com/claude-office-skills/skills --skill chart-designer
Total Downloads
6,000 on skills.sh, Nov 9, 2026
Repo stars
569 claude-office-skills/skills
First seen
Mar 9, 2026 on skills.sh
Weekly Downloads
184
+48% over the 8 weeks to Nov 9
Weekly values
Week toInstalls
Sep 21124
Sep 2894
Oct 587
Oct 12160
Oct 19247
Oct 26230
Nov 2118
Nov 9184
Category

Research reproduction, financial data, charts and diagrams.

Type

Knowledge and rules the agent applies while it works: best practices, design principles, API references.

Effect

Adds no side effects of its own. It shapes how the agent thinks, writes or reviews. Guidelines and routers are always effect:none, even when the task they support edits code.

Needs

Instructions only. Works in any agent that supports skills.

Publisher

Everyone else. Unverified vendor claims default to community.

Topics
Stack

SKILL.md

From claude-office-skills/skills at 9c4c7d5. Checked daily, last changed Nov 6, 2026.

Frontmatter
# ═══════════════════════════════════════════════════════════════════════════════
# CLAUDE OFFICE SKILL - Chart Designer
# ═══════════════════════════════════════════════════════════════════════════════

name: chart-designer
description: "Design effective data visualizations and charts. Generate chart configurations for ECharts, Chart.js, and other libraries. Create dashboards and reports."
version: "1.0.0"
author: claude-office-skills
license: MIT

category: visualization
tags:
  - chart
  - data-visualization
  - echarts
  - dashboard
  - analytics
department: Data/Analytics

models:
  recommended:
    - claude-sonnet-4
    - claude-opus-4
  compatible:
    - claude-3-5-sonnet
    - gpt-4
    - gpt-4o

mcp:
  server: office-mcp
  tools:
    - create_chart
    - read_xlsx
    - create_xlsx

capabilities:
  - chart_selection
  - data_visualization
  - dashboard_design
  - configuration_generation
  - best_practices

languages:
  - en
  - zh

related_skills:
  - data-analysis
  - infographic
  - report-generator

Chart Designer Skill

Overview

I help you design effective data visualizations by recommending the right chart types, generating configurations for popular charting libraries, and applying data visualization best practices.

What I can do:

  • Recommend appropriate chart types for your data
  • Generate ECharts/Chart.js configurations
  • Design dashboard layouts
  • Apply visualization best practices
  • Create Excel chart specifications
  • Suggest color schemes and styling

What I cannot do:

  • Render charts directly (use generated configs in tools)
  • Create custom chart types from scratch
  • Access your data directly

How to Use Me

Step 1: Describe Your Data

Tell me:

  • What type of data you have
  • What story you want to tell
  • Your audience (technical, executive, public)
  • Where it will be displayed (presentation, dashboard, report)
Step 2: Get Recommendations

I'll suggest:

  • Best chart type(s) for your data
  • Configuration options
  • Color schemes
  • Layout considerations
Step 3: Receive Chart Configs

I'll provide:

  • ECharts JSON configuration
  • Chart.js configuration
  • Excel chart setup instructions
  • CSS/styling recommendations

Chart Selection Guide

Comparison Charts
Chart Type Best For Data Requirements
Bar Chart Comparing categories Categories + values
Grouped Bar Multiple series comparison Categories + multiple series
Stacked Bar Part-to-whole comparison Categories + component values
Trend Charts
Chart Type Best For Data Requirements
Line Chart Change over time Time series data
Area Chart Cumulative trends Time series (stacked optional)
Sparkline Compact trends Simple time series
Distribution Charts
Chart Type Best For Data Requirements
Histogram Value distribution Numeric values
Box Plot Distribution summary Numeric values with quartiles
Scatter Plot Correlation Two numeric variables
Part-to-Whole Charts
Chart Type Best For Data Requirements
Pie Chart Simple proportions (≤5 items) Categories + percentages
Donut Chart Proportions with total Categories + percentages
Treemap Hierarchical proportions Hierarchical data + values
Specialized Charts
Chart Type Best For Data Requirements
Funnel Process stages/conversion Stages + values
Gauge Single KPI vs target Current value + target
Heatmap Matrix comparisons Row + Column + Value
Radar Multi-dimensional comparison Multiple metrics per item
Sankey Flow/transitions Source + Target + Value

Decision Tree

What do you want to show?
│
├─ Comparison
│   ├─ Among items → Bar Chart
│   ├─ Over time → Line Chart
│   └─ Multiple series → Grouped/Stacked Bar
│
├─ Composition
│   ├─ Static → Pie/Donut (≤5) or Treemap
│   ├─ Over time → Stacked Area
│   └─ Hierarchical → Treemap/Sunburst
│
├─ Distribution
│   ├─ Single variable → Histogram
│   ├─ Multiple datasets → Box Plot
│   └─ Two variables → Scatter Plot
│
├─ Relationship
│   ├─ Two variables → Scatter Plot
│   ├─ Three variables → Bubble Chart
│   └─ Correlation matrix → Heatmap
│
└─ Flow/Process
    ├─ Sequential stages → Funnel
    ├─ Transitions → Sankey
    └─ Single metric → Gauge

Output Format

# Chart Design: [Title]

**Data Type**: [Description]
**Purpose**: [What story to tell]
**Recommended Chart**: [Chart type]

---

## Chart Configuration

### ECharts

```javascript
const option = {
  title: {
    text: 'Chart Title',
    left: 'center'
  },
  tooltip: {
    trigger: 'axis'
  },
  legend: {
    data: ['Series 1', 'Series 2'],
    bottom: 10
  },
  xAxis: {
    type: 'category',
    data: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun']
  },
  yAxis: {
    type: 'value'
  },
  series: [
    {
      name: 'Series 1',
      type: 'bar',
      data: [120, 200, 150, 80, 70, 110]
    },
    {
      name: 'Series 2',
      type: 'line',
      data: [100, 180, 160, 90, 80, 100]
    }
  ]
};
Chart.js
const config = {
  type: 'bar',
  data: {
    labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'],
    datasets: [{
      label: 'Series 1',
      data: [120, 200, 150, 80, 70, 110],
      backgroundColor: 'rgba(54, 162, 235, 0.8)'
    }]
  },
  options: {
    responsive: true,
    plugins: {
      title: {
        display: true,
        text: 'Chart Title'
      }
    }
  }
};

Styling Recommendations

Color Palette
  • Primary: #5470c6
  • Secondary: #91cc75
  • Accent: #fac858
  • Neutral: #73c0de
Typography
  • Title: 16px, bold
  • Labels: 12px, regular
  • Axis: 11px, light

Best Practices Applied

  1. [Practice 1]
  2. [Practice 2]
  3. [Practice 3]

Alternative Charts

If this doesn't work well, consider:

  1. [Alternative 1] - when [condition]
  2. [Alternative 2] - when [condition]

---

## ECharts Common Configurations

### Bar Chart
```javascript
{
  xAxis: { type: 'category', data: categories },
  yAxis: { type: 'value' },
  series: [{
    type: 'bar',
    data: values,
    itemStyle: { color: '#5470c6' }
  }]
}
Line Chart
{
  xAxis: { type: 'category', data: categories },
  yAxis: { type: 'value' },
  series: [{
    type: 'line',
    data: values,
    smooth: true,
    areaStyle: {} // for area chart
  }]
}
Pie Chart
{
  series: [{
    type: 'pie',
    radius: ['40%', '70%'], // donut
    data: [
      { value: 100, name: 'A' },
      { value: 200, name: 'B' }
    ]
  }]
}
Scatter Plot
{
  xAxis: { type: 'value' },
  yAxis: { type: 'value' },
  series: [{
    type: 'scatter',
    data: [[x1, y1], [x2, y2]],
    symbolSize: 10
  }]
}

Color Palettes

Professional
#5470c6, #91cc75, #fac858, #ee6666, #73c0de, #3ba272, #fc8452, #9a60b4
Cool
#1f77b4, #aec7e8, #17becf, #9edae5, #6baed6, #c6dbef, #08519c, #3182bd
Warm
#ff7f0e, #ffbb78, #d62728, #ff9896, #e377c2, #f7b6d2, #bcbd22, #dbdb8d
Accessible (colorblind-friendly)
#0077BB, #33BBEE, #009988, #EE7733, #CC3311, #EE3377, #BBBBBB

Best Practices

Data Ink Ratio
  • Remove unnecessary gridlines
  • Minimize chart junk
  • Let data be the focus
Clarity
  • Clear, descriptive titles
  • Labeled axes with units
  • Appropriate precision (not too many decimals)
Comparison
  • Start y-axis at zero for bar charts
  • Use consistent scales for comparison
  • Sort data logically
Color
  • Use color purposefully
  • Consider colorblind users
  • Don't use too many colors (≤7)
Interaction
  • Tooltips for details
  • Zoom for dense data
  • Drill-down for hierarchies

Tips for Better Charts

  1. Know your audience - technical vs. executive
  2. Start with the question - what are you trying to answer?
  3. Choose the right chart - don't force data into wrong formats
  4. Simplify - less is more
  5. Label clearly - assume viewers have no context
  6. Test with real users - is the message clear?
  7. Consider accessibility - colors, contrast, alt text

Limitations

  • Cannot render charts directly
  • Configuration may need adjustment for specific tools
  • Complex custom visualizations may require code
  • Real-time data requires additional setup

Built by the Claude Office Skills community. Contributions welcome!