scikit-plot
An intuitive library to add plotting functionality to scikit-learn objects.
What it is and what it does
Scikit-plot is a thin wrapper around matplotlib that generates common machine learning evaluation visualizations—ROC curves, confusion matrices, precision-recall plots, and similar metrics—with minimal boilerplate. Instead of writing dozens of lines to configure matplotlib and compute multi-class variants, you call a single function with your ground-truth labels and predicted probabilities, and get a polished, publication-ready plot.
The library works with any classifier that produces probability predictions. It depends on matplotlib for rendering, scikit-learn for metric computations, scipy for statistical operations, and joblib for parallelization. The package has been dormant since 2018-08-19, so it receives no active maintenance or updates.
Use it for:
- Quickly visualize multi-class ROC curves with micro and macro averages for classifier evaluation
- Generate confusion matrices with class labels for model diagnostic reports
- Plot precision-recall curves for imbalanced classification problems
- Create publication-ready evaluation plots for academic papers or presentations without manual matplotlib configuration
- Compare classifier performance across multiple metrics in a single visualization pass
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Scikit-plot generates publication-ready visualizations for machine learning evaluation metrics with single-line function calls, working with scikit-learn and other classifiers.
Yes, if you need fast, minimal-boilerplate ML evaluation plots and can tolerate dormant maintenance. The low install friction and permissive license make it a low-risk addition to analysis workflows. However, be aware that no active development means no fixes for compatibility issues with newer dependencies—test thoroughly in your environment before relying on it in production pipelines.
Install
scikit-plot on PyPI
pip
pip install scikit-plotuv
uv add scikit-plotpoetry
poetry add scikit-plotInstalling scikit-plot
Before you install
Low install friction with standard dependencies (matplotlib, scikit-learn, scipy, joblib). Package is dormant—last release was 2018-08-19 and no commits since 2024-08-20—so expect no active maintenance or bug fixes.
License in practice
MIT License (permissive) allows free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.
Quickstart
pip install scikit-plot
import scikitplot as skplt
import matplotlib.pyplot as plt
# After training a classifier and generating predicted_probas:
skplt.metrics.plot_roc(y_test, predicted_probas)
plt.show()
Verify before relying
- Whether the package works reliably with modern versions of matplotlib and scikit-learn given dormant maintenance since 2018
- Whether Python 2.7 and 3.5 support listed in classifiers remains functional or is historical only
- Compatibility with current versions of scipy and joblib
Package facts
| License | MIT License (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — matplotlib, scikit-learn, scipy, joblib |
| Maintenance | dormant — 2,917 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 511,194/month — #6,261 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: scikit_plot-0.3.7-py3-none-any.whl
Tags
More Visualization packages
matplotlib creates static, animated, and…
permissive · top 1,000 on PyPI
contourpyContourPy calculates contours of 2D…
permissive · top 1,000 on PyPI
plotlyPlotly is an interactive, browser-based…
permissive · top 1,000 on PyPI
graphvizGenerates DOT language source code for graph…
permissive · top 1,000 on PyPI
streamlitStreamlit transforms Python scripts into…
permissive · top 1,000 on PyPI
leatherLeather is a lightweight Python charting…
permissive · top 1,000 on PyPI
yellowbrickYellowbrick provides scikit-learn-integrated…
permissive · top 15,000 on PyPI
dtreevizdtreeviz renders decision trees from…
permissive · top 15,000 on PyPI
ngboostNGBoost implements Natural Gradient Boosting…
permissive · top 15,000 on PyPI
splotsplot creates static and interactive…
permissive · top 15,000 on PyPI
cornerGenerates publication-quality corner plots…
permissive · top 15,000 on PyPI
pytabkitPyTabKit provides scikit-learn interfaces to…
permissive · top 15,000 on PyPI
pandas-summaryExtends pandas' describe() function to provide…
permissive · top 15,000 on PyPI
UpSetPlotUpSetPlot generates visualizations of set…
permissive · top 15,000 on PyPI
lovelyplotsLovelyPlots provides matplotlib style sheets…
permissive · top 15,000 on PyPI