yellowbrick
A suite of visual analysis and diagnostic tools for machine learning.
Decision gist · record as of 2026-08-14
Yes, if you are working with scikit-learn and need quick diagnostic visualizations without writing custom matplotlib code. The low install friction and permissive license make it a safe addition. However, the dormant maintenance status means you should verify compatibility with your specific scikit-learn and matplotlib versions before relying on it in production—no active support is available for breakage.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction install with standard scientific Python stack dependencies (matplotlib, scipy, scikit-learn, numpy).
- Maintenance is dormant—last release was 2022-08-21 and no commits since 2025-02-19, so expect no active bug fixes or feature development, though the codebase remains stable.
License · maintenance · safety
Apache 2 (permissive) — Apache 2 permissive license allows commercial and private use without restriction, making it safe for most projects.
last release 2022-08-21 (1454 days) · last repo commit 2025-02-19 · 4,399 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 593,875 downloads/mo, #5,848 on PyPI
Alternatives
Verify before relying
pip install yellowbrick
from yellowbrick.classifier import ConfusionMatrix
visualizer = ConfusionMatrix(estimator)
visualizer.fit(X_train, y_train)
visualizer.score(X_test, y_test)
visualizer.show()- Whether dormant status means breaking changes in newer scikit-learn or matplotlib versions are unaddressed
- Compatibility with Python versions beyond 3.9 (classifiers list ends at 3.9, requires_python allows up to 3.99)
What it is and what it does
Yellowbrick wraps estimators with a Visualizer API that generates diagnostic plots for the model selection workflow. It implements visualizers for classification (confusion matrices, ROC curves, precision-recall plots), clustering (silhouette analysis, elbow curves), feature analysis (PCA projections, feature importance rankings), regression (residual plots, prediction error analysis), and text data (term frequency, t-SNE corpus plots). Each visualizer learns from data like a transformer or model, integrating into existing workflows.
The library's core strength is reducing the friction of exploratory model diagnostics—instead of writing matplotlib code to plot cross-validation scores, learning curves, or class balance, you instantiate a visualizer, fit it to your data, and call show(). It depends on matplotlib for rendering, scipy and numpy for computation, and scikit-learn for the estimator interface. The package is stable and production-ready but dormant; no active development has occurred since mid-2022.
Use it for
- Visualize confusion matrices and classification reports to diagnose precision, recall, and F1 imbalances across classes
- Plot learning curves to determine whether a model would benefit from more training data or reduced complexity
- Generate ROC and precision-recall curves to evaluate binary and multiclass classifier thresholds
- Identify optimal cluster count using silhouette scores or elbow detection in clustering workflows
- Rank feature importance and perform recursive feature elimination to guide feature engineering
- Inspect residuals and prediction errors in regression models to detect systematic model failures
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are working with scikit-learn and need quick diagnostic visualizations without writing custom matplotlib code.
The low install friction and permissive license make it a safe addition. However, the dormant maintenance status means you should verify compatibility with your specific scikit-learn and matplotlib versions before relying on it in production—no active support is available for breakage.
Install
yellowbrick on PyPI
Before you install
Low friction install with standard scientific Python stack dependencies (matplotlib, scipy, scikit-learn, numpy). Maintenance is dormant—last release was 2022-08-21 and no commits since 2025-02-19, so expect no active bug fixes or feature development, though the codebase remains stable.
License in practice
Apache 2 permissive license allows commercial and private use without restriction, making it safe for most projects.
Quickstart
pip install yellowbrick
from yellowbrick.classifier import ConfusionMatrix
visualizer = ConfusionMatrix(estimator)
visualizer.fit(X_train, y_train)
visualizer.score(X_test, y_test)
visualizer.show()
Verify before relying
- Whether dormant status means breaking changes in newer scikit-learn or matplotlib versions are unaddressed
- Compatibility with Python versions beyond 3.9 (classifiers list ends at 3.9, requires_python allows up to 3.99)
Package facts
| License | Apache 2 permissive |
| Python support | Supports the current Python release >=3.4, <4 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 5 packagesmatplotlibscipyscikit-learnnumpycycler |
| Maintenance | Dormant 1,454 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 593,875 / month, #5,848 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Scientific/Engineering :: VisualizationTopic :: Software DevelopmentTopic :: Software Development :: Libraries :: Python Modules |
Evidence: yellowbrick-1.5-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “scikit-learn visualization”
- yellowbrickYellowbrick provides scikit-learn-integrated visualizers for model…
- dtreevizdtreeviz renders decision trees from scikit-learn, XGBoost, LightGBM,…
- scikit-plotScikit-plot generates publication-ready visualizations for machine…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also scikit-plot · missingno · treescope · dtreeviz · azureml-train-core · pm4py · scikit-learn · spark-sklearn · scikit-multilearn · feature-engine