Low-level plotting library for full customization. Use when you need fine-grained control over every plot element, creating novel plot types, or integrating with specific scientific workflows. Export to PNG/PDF/SVG for publication. For quick statistical plots use seaborn; for interactive plots use plotly; for publication-ready multi-panel figures with journal styling, use scientific-visualization.
Install with Tessl CLI
npx tessl i github:K-Dense-AI/claude-scientific-skills --skill matplotlibOverall
score
72%
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillValidation for skill structure
Discovery
90%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong description that excels at completeness and distinctiveness by explicitly stating when to use it and when to use alternatives. The trigger terms are natural and comprehensive. The main weakness is that the specific capabilities could be more concrete - listing actual actions like 'customize axes, create subplots, add annotations' rather than abstract concepts like 'full customization'.
Suggestions
Replace abstract phrases like 'full customization' and 'fine-grained control over every plot element' with concrete actions such as 'customize axes, legends, colors, create subplots, add annotations'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (plotting) and mentions some actions like 'full customization', 'creating novel plot types', 'Export to PNG/PDF/SVG', but doesn't list multiple concrete specific actions like 'create scatter plots, customize axes, add annotations'. | 2 / 3 |
Completeness | Clearly answers both what ('Low-level plotting library for full customization', 'Export to PNG/PDF/SVG') and when ('Use when you need fine-grained control over every plot element, creating novel plot types, or integrating with specific scientific workflows') with explicit trigger guidance. | 3 / 3 |
Trigger Term Quality | Includes good natural keywords users would say: 'plotting', 'plot', 'customization', 'PNG/PDF/SVG', 'publication', 'scientific workflows', plus explicit mentions of alternative tools (seaborn, plotly) which helps with disambiguation. | 3 / 3 |
Distinctiveness Conflict Risk | Excellent distinctiveness - explicitly differentiates from seaborn (quick statistical plots), plotly (interactive), and scientific-visualization (publication-ready multi-panel), carving out a clear niche for low-level customization needs. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
50%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill provides excellent actionable code examples that are immediately executable, but suffers from significant verbosity by explaining matplotlib fundamentals that Claude already knows. The structure references external files appropriately but fails to move enough content there, resulting in a bloated main document. The promotional K-Dense section at the end is inappropriate for a skill file.
Suggestions
Remove the 'Core Concepts' section explaining matplotlib hierarchy and the two interfaces comparison - Claude knows this. Keep only the recommendation to use OO interface.
Move the extensive 'Plot Types and Use Cases' section to the referenced plot_types.md file, keeping only a brief mention that plot types are documented there.
Remove the 'When to Use This Skill' section entirely - this duplicates the skill description and explains obvious use cases.
Remove the K-Dense promotional section at the end - it's not relevant to matplotlib usage and wastes tokens.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose with extensive explanations of concepts Claude already knows (matplotlib hierarchy, what figures/axes are, basic plot types). The 'When to Use This Skill' and 'Core Concepts' sections explain fundamentals that don't need explanation. The promotional K-Dense section at the end is irrelevant padding. | 1 / 3 |
Actionability | Provides fully executable, copy-paste ready code examples throughout. All code snippets are complete with imports, and cover a comprehensive range of plot types with specific syntax and parameters. | 3 / 3 |
Workflow Clarity | Steps are listed clearly for basic workflows, but lacks validation checkpoints. For example, the save workflow doesn't verify the file was created successfully, and there's no error handling guidance for common failure modes like missing fonts or memory issues. | 2 / 3 |
Progressive Disclosure | References external files (references/plot_types.md, references/styling_guide.md, scripts/) appropriately, but the main document is bloated with content that should be in those reference files. The inline API explanations and extensive plot type examples belong in the referenced documents. | 2 / 3 |
Total | 8 / 12 Passed |
Validation
94%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 15 / 16 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
metadata_version | 'metadata.version' is missing | Warning |
Total | 15 / 16 Passed | |
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.