Seaborn

A Python statistical data visualization library built on matplotlib, for attractive charts with minimal code

Library
PyPI
v0.13.2
14,016stars
BSD 3-Clause License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
73/100Good
Development Activity52
Maintenance56
Community84
Maturity60
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
81/100Excellent
Architecture82
Code Quality85
Innovation80
Learning Curve78

Seaborn is a high-level Python data visualization library built on top of matplotlib, designed to make statistical graphics easy to produce. It provides a declarative API that works directly with pandas DataFrames, automatically handling aggregation, estimation, and mapping of variables to visual attributes like color, size, and style.

With built-in themes, color palettes, and support for complex multi-plot grids (facets), seaborn lets data scientists and analysts go from a raw DataFrame to a publication-quality statistical chart in a single function call, while still allowing fine-grained customization via the underlying matplotlib objects.

What You Get

  • High-level plotting functions for relational, categorical, and distributional data (scatter, line, bar, box, violin, histogram, KDE)
  • Automatic statistical estimation with confidence intervals for regression and aggregate plots
  • Built-in, colorblind-friendly color palettes and figure themes for consistent, attractive styling
  • Multi-plot grid objects (FacetGrid, PairGrid, JointGrid) for exploring relationships across subsets of data
  • A newer declarative objects interface for composing custom plots from smaller building blocks
  • Tight integration with pandas DataFrames and numpy arrays as first-class data inputs

Common Use Cases

  • Exploratory data analysis - quickly visualize distributions, correlations, and relationships in a new dataset
  • Statistical reporting - generate regression plots, box/violin plots, and confidence intervals for research papers or dashboards
  • Multi-variable comparison - use facet grids to compare a metric across categories, time, or experimental conditions
  • Publication-quality figures - produce polished, theme-consistent charts for papers, presentations, and notebooks with minimal styling code

Under The Hood

Architecture - Seaborn is organized around two layers: a set of high-level “figure-level” functions (relplot, catplot, displot, pairplot) that manage figure creation and faceting, and lower-level “axes-level” functions (scatterplot, boxplot, histplot) that draw onto a single matplotlib Axes. Internally, the _core subpackage (seaborn/_core/) implements a semantic mapping layer (scales.py, subplots.py, rules.py) that translates DataFrame columns into visual properties (color, size, style) and manages subplot layout, while _base.py and _statistics.py handle variable grouping and statistical estimation shared across plot types.

Tech Stack - Built in pure Python (99.97% of the codebase) targeting Python 3.10+, with hard dependencies on numpy (>=2.0), pandas (>=2.2), and matplotlib (>=3.9); optional stats extras pull in scipy and statsmodels for advanced estimators. The build uses flit_core as its backend and uv for dependency management in development.

Code Quality - The tests/ directory mirrors the library’s module structure with dedicated files per plot family (test_relational.py, test_categorical.py, test_distributions.py, etc.) plus a tests/_core/ suite for the internal scaling/layout engine, run via pytest with coverage reporting (pytest-cov) and parallelized via pytest-xdist. Code style is enforced with ruff and a ty type checker, and pre-commit hooks are provided for contributors, indicating a mature, actively maintained quality process.

API Design - The library favors a small number of consistent, keyword-driven entry points (data=, x=, y=, hue=) shared across nearly every plotting function, so patterns learned on one plot type transfer directly to others. The newer objects module offers a more composable, Grammar-of-Graphics-style API for users who outgrow the convenience functions, while extensive docstrings and an example gallery keep the learning curve manageable despite the breadth of statistical options.

Used by 6 apps in this directory

Python
91%
Apache 2.0

ART

AI Development

10,703

Give your LLM agents on-the-job training—ART lets you apply GRPO reinforcement learning to any multi-step agentic workflow with minimal code changes.

View details
84
Repo Health
82
Technical
73
Dependency
Built with
Python91%
Updated 2 days ago
TypeScript
72%
MIT

Claude Context

AI Code Assistants

12,498

An MCP server and VS Code extension by Zilliz that turns your entire codebase into semantically searchable context for Claude Code, Cursor, and Gemini CLI, using vector embeddings and Merkle-tree change detection.

View details
49
Repo Health
71
Technical
71
Dependency
Built with
TypeScript72%
Python13%
JavaScript11%
Updated 1 months ago
Python
100%
Apache 2.0

ClearML

Devops · Automation

6,858

Auto-magical MLOps platform that tracks experiments, versions data, orchestrates pipelines, and serves models with just two lines of code.

View details
95
Repo Health
79
Technical
67
Dependency
Built with
Python100%
Updated yesterday
TypeScript
84%
Apache 2.0

Continue

Developer Tools · AI Development · AI Code Assistants

35,808

Open-source coding agent for VS Code, JetBrains, and CLI with support for 30+ LLM providers.

View details
81
Repo Health
88
Technical
62
Dependency
Built with
TypeScript84%
Updated yesterday
TypeScript
59%
MIT

oh-my-claudecode

AI Agents

39,033

Multi-agent orchestration for Claude Code with zero learning curve — install as a plugin or npm CLI and coordinate parallel Claude Code agents through pre-built workflows instead of managing them by hand.

View details
84
Repo Health
70
Technical
76
Dependency
Built with
TypeScript59%
JavaScript40%
Updated yesterday
Python
93%
BSD 3

skrub

Developer Tools

1,651

Turn messy real-world dataframes into machine learning features — no manual wrangling required.

View details
86
Repo Health
84
Technical
80
Dependency
Built with
Python93%
Updated 6 days ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search