Visualization libraries · plotnine developers (Hassan Kibirige)
plotnine
Python implementation of R's ggplot2 grammar of graphics, for building charts by layering data, geometries, and scales.
plotnine is a Python plotting library that reimplements R's ggplot2 grammar of graphics, letting users build charts by composing layers — a base aesthetic mapping, one or more geometries (points, lines, bars), statistical transformations, and scales — with the + operator rather than calling one function per chart type. It is aimed squarely at users coming from, or working alongside, R's tidyverse who want the same mental model and faceting/theming conventions in Python. It renders static output via Matplotlib underneath, so it inherits Matplotlib's export formats but not its imperative Axes-based API. plotnine covers most of ggplot2's core grammar (facets, coordinate systems, statistical layers) though some ggplot2 extensions and interactive features are not available.
At a glance
| Vendor | plotnine developers (Hassan Kibirige) |
|---|---|
| Pricing model | Open source + paid options |
| Free tier | Yes |
| Deployment | Self-hosted |
| Open source | Yes (MIT) |
| Best for | Python users who know ggplot2 and want the same grammar of graphics without switching languages. |
Pricing
Free, open-source library with no pricing page.
Pricing has not been verified yet — see the vendor's site.
Features
- Grammar-of-graphics layered chart composition
- ggplot2-compatible syntax and conventions
- Faceting and theming
- Statistical transformation layers
- Matplotlib-based static rendering
- Familiar model for R/tidyverse users moving to Python
Integrations
Profile last reviewed September 21, 2026