Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
anthropics avatar

Create Viz

  • 4.2k installs
  • 23.1k repo stars
  • Updated July 28, 2026
  • anthropics/knowledge-work-plugins

A publication-quality data visualization (chart, graph, map, or heatmap) generated from structured data with design best practices applied.

About

create-viz generates publication-quality data visualizations from Python DataFrames or query results using matplotlib, seaborn, or plotly. Developers use it to convert raw data into charts for reports, dashboards, and presentations. The workflow handles data source selection (query, paste, CSV, or existing DataFrame), chart type recommendation based on data relationships (line for trends, bar for comparisons, scatter for correlation, heatmap for matrices), and code generation with design best practices. It applies colorblind-friendly palettes, removes chart junk, formats numbers appropriately (percentages, currency, large numbers), and ensures readable typography. Output is saved as PNG and code is provided for modification. Supports static charts via matplotlib/seaborn or interactive charts via plotly with hover and zoom. Recommends chart type automatically based on data relationship (trend, comparison, distribution, correlation, composition, ranking, flow, geographic, matrix). Generates publication-quality code with design best practices: colorblind palettes, proper number formatting, readable typography, whitespace management.

  • Recommends chart type automatically based on data relationship (trend, comparison, distribution, correlation, compositio
  • Generates publication-quality code with design best practices: colorblind palettes, proper number formatting, readable t
  • Supports both static charts (matplotlib/seaborn) and interactive visualizations (plotly) with hover, zoom, and filter ca
  • Handles multiple data sources: query results, pasted data, CSV/Excel files, or existing conversation DataFrames with pan
  • Saves charts as PNG files with descriptive names and provides code for user modification and variation creation

Create Viz by the numbers

  • 4,170 all-time installs (skills.sh)
  • +203 installs in the week ending Jul 28, 2026 (Skillselion tracking)
  • Ranked #20 of 2,066 Data Science & ML skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
At a glance

create-viz capabilities & compatibility

Capabilities
automatic chart type recommendation · static chart generation via matplotlib/seaborn · interactive chart generation via plotly · data source handling from queries, files, or pas · design best practices application (color, typogr · number formatting (percentages, currency, abbrev · png export with configurable resolution
Use cases
data analysis · presentations
Platforms
macOS · Windows · Linux
Runs
Runs locally
Pricing
Free
From the docs

What create-viz says it does

Create publication-quality data visualizations using Python. Generates charts from data with best practices for clarity, accuracy, and design.
skill description
npx skills add https://github.com/anthropics/knowledge-work-plugins --skill create-viz

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs4.2k
repo stars23.1k
Security audit3 / 3 scanners passed
Last updatedJuly 28, 2026
Repositoryanthropics/knowledge-work-plugins

What it does

Generate publication-quality charts from query results or DataFrames for reports and presentations.

Who is it for?

Converting DataFrames or query results into charts for technical reports, executive presentations, dashboard components, and data exploration.

Skip if: Real-time streaming dashboards, custom interactive web applications, or charts requiring complex domain-specific visualization logic.

When should I use this skill?

User has data and needs a chart type recommendation, or requests visualization of query results, DataFrame, or pasted data.

What you get

Polished, presentation-ready chart saved as PNG with Python code provided for reuse and iteration.

  • PNG chart file saved to current directory
  • Python code used to generate chart
  • Design recommendations for variations or alternative chart types

By the numbers

  • Supports 9+ standard chart types via recommendation table
  • Uses colorblind-friendly palette with semantic color use
  • Outputs PNG at 150 dpi for publication quality

Files

SKILL.mdMarkdownGitHub ↗

/create-viz - Create Visualizations

If you see unfamiliar placeholders or need to check which tools are connected, see CONNECTORS.md.

Create publication-quality data visualizations using Python. Generates charts from data with best practices for clarity, accuracy, and design.

Usage

/create-viz <data source> [chart type] [additional instructions]

Workflow

1. Understand the Request

Determine:

  • Data source: Query results, pasted data, CSV/Excel file, or data to be queried
  • Chart type: Explicitly requested or needs to be recommended
  • Purpose: Exploration, presentation, report, dashboard component
  • Audience: Technical team, executives, external stakeholders

2. Get the Data

If data warehouse is connected and data needs querying: 1. Write and execute the query 2. Load results into a pandas DataFrame

If data is pasted or uploaded: 1. Parse the data into a pandas DataFrame 2. Clean and prepare as needed (type conversions, null handling)

If data is from a previous analysis in the conversation: 1. Reference the existing data

3. Select Chart Type

If the user didn't specify a chart type, recommend one based on the data and question:

Data RelationshipRecommended Chart
Trend over timeLine chart
Comparison across categoriesBar chart (horizontal if many categories)
Part-to-whole compositionStacked bar or area chart (avoid pie charts unless <6 categories)
Distribution of valuesHistogram or box plot
Correlation between two variablesScatter plot
Two-variable comparison over timeDual-axis line or grouped bar
Geographic dataChoropleth map
RankingHorizontal bar chart
Flow or processSankey diagram
Matrix of relationshipsHeatmap

Explain the recommendation briefly if the user didn't specify.

4. Generate the Visualization

Write Python code using one of these libraries based on the need:

  • matplotlib + seaborn: Best for static, publication-quality charts. Default choice.
  • plotly: Best for interactive charts or when the user requests interactivity.

Code requirements:

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd

# Set professional style
plt.style.use('seaborn-v0_8-whitegrid')
sns.set_palette("husl")

# Create figure with appropriate size
fig, ax = plt.subplots(figsize=(10, 6))

# [chart-specific code]

# Always include:
ax.set_title('Clear, Descriptive Title', fontsize=14, fontweight='bold')
ax.set_xlabel('X-Axis Label', fontsize=11)
ax.set_ylabel('Y-Axis Label', fontsize=11)

# Format numbers appropriately
# - Percentages: '45.2%' not '0.452'
# - Currency: '$1.2M' not '1200000'
# - Large numbers: '2.3K' or '1.5M' not '2300' or '1500000'

# Remove chart junk
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)

plt.tight_layout()
plt.savefig('chart_name.png', dpi=150, bbox_inches='tight')
plt.show()

5. Apply Design Best Practices

Color:

  • Use a consistent, colorblind-friendly palette
  • Use color meaningfully (not decoratively)
  • Highlight the key data point or trend with a contrasting color
  • Grey out less important reference data

Typography:

  • Descriptive title that states the insight, not just the metric (e.g., "Revenue grew 23% YoY" not "Revenue by Month")
  • Readable axis labels (not rotated 90 degrees if avoidable)
  • Data labels on key points when they add clarity

Layout:

  • Appropriate whitespace and margins
  • Legend placement that doesn't obscure data
  • Sorted categories by value (not alphabetically) unless there's a natural order

Accuracy:

  • Y-axis starts at zero for bar charts
  • No misleading axis breaks without clear notation
  • Consistent scales when comparing panels
  • Appropriate precision (don't show 10 decimal places)

6. Save and Present

1. Save the chart as a PNG file with descriptive name 2. Display the chart to the user 3. Provide the code used so they can modify it 4. Suggest variations (different chart type, different grouping, zoomed time range)

Examples

/create-viz Show monthly revenue for the last 12 months as a line chart with the trend highlighted
/create-viz Here's our NPS data by product: [pastes data]. Create a horizontal bar chart ranking products by score.
/create-viz Query the orders table and create a heatmap of order volume by day-of-week and hour

Tips

  • If you want interactive charts (hover, zoom, filter), mention "interactive" and Claude will use plotly
  • Specify "presentation" if you need larger fonts and higher contrast
  • You can request multiple charts at once (e.g., "create a 2x2 grid of charts showing...")
  • Charts are saved to your current directory as PNG files

Related skills

How it compares

Pick create-viz for agent-driven Python charts from existing data; use a BI tool or front-end chart library when charts must live inside a shipped product UI.

FAQ

What chart types are recommended for different data patterns?

Trends use line charts, comparisons use bar charts, distributions use histograms, correlations use scatter plots, composition uses stacked bars, rankings use horizontal bars, and matrices use heatmaps.

Can I create interactive charts?

Yes - mention 'interactive' in your request and plotly will be used instead of matplotlib to enable hover, zoom, and filtering.

How is the data provided?

Via query results from a connected data warehouse, pasted data, CSV/Excel files, or existing DataFrames from previous conversation analysis.

Is Create Viz safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

Data Science & MLanalyticspipelines

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.