Statistical visualization with pandas integration. Use for quick exploration of distributions, relationships, and categorical comparisons with attractive defaults. Best for box plots, violin plots, pair plots, heatmaps. Built on matplotlib. For interactive plots use plotly; for publication styling use scientific-visualization.
84
75%
Does it follow best practices?
Impact
90%
2.81xAverage score across 6 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./scientific-skills/seaborn/SKILL.mdPublication-quality multi-panel figure
DataFrame-based plotting
100%
100%
Axes-level with ax=
60%
100%
Paper context set
0%
100%
Ticks style applied
0%
100%
Colorblind palette
0%
100%
Semantic mappings used
25%
100%
despine called
0%
100%
Matplotlib ax.set() usage
100%
100%
High DPI save
100%
100%
PDF format saved
100%
100%
tight_layout called
100%
100%
Output files present
100%
100%
Faceted visualization with statistical estimation
Long-form data preference
100%
100%
melt() for reshaping
100%
100%
Figure-level function for faceting
0%
100%
height and aspect sizing
0%
100%
lineplot errorbar customized
0%
100%
hue semantic mapping
100%
100%
violinplot split comparison
0%
0%
histplot stat parameter
0%
0%
pairplot corner=True
0%
0%
FacetGrid set_axis_labels
0%
100%
Output files present
100%
100%
Correlation and clustering heatmap
Diverging colormap for correlation
100%
100%
center=0 for heatmap
100%
100%
annot=True with fmt
100%
100%
square=True for correlation heatmap
0%
100%
Upper triangle mask
0%
0%
clustermap normalization
40%
100%
clustermap method/metric
100%
0%
clustermap row_colors or col_colors
100%
100%
Sequential colormap for clustermap
0%
100%
set_theme applied
0%
100%
High DPI save
100%
100%
Output files present
100%
100%
seaborn.objects declarative API
Uses so.Plot
0%
100%
Method chaining
0%
100%
Multiple .add() layers
0%
100%
Stat in .add()
0%
100%
Move in .add() (Dodge)
0%
100%
.facet() usage
0%
100%
.scale() usage
0%
100%
.label() usage
0%
100%
.save() not plt.savefig()
0%
100%
PNG and PDF outputs
100%
100%
Color encoding via objects API
0%
100%
Regression and residual visualization
regplot used
0%
100%
polynomial order parameter
0%
100%
lmplot for faceted regression
0%
100%
residplot used
0%
100%
ci parameter specified
0%
100%
scatter_kws or line_kws
0%
100%
lmplot height+aspect
0%
100%
ax= for axes-level layout
0%
100%
DataFrame-based plotting
0%
100%
lmplot set_axis_labels
0%
100%
Output files present
100%
100%
Distribution exploration with KDE, ECDF, and PairGrid
PairGrid used
0%
100%
map_diag, map_upper, map_lower
0%
100%
PairGrid add_legend
0%
100%
bw_adjust parameter used
100%
100%
ecdfplot used
0%
100%
ecdfplot hue grouping
0%
100%
Talk context applied
0%
100%
Different context from default
0%
100%
DataFrame-based plotting
0%
62%
Output files present
100%
100%
High-quality save
0%
0%
086de41
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.