mizani
Scales for Python
What it is and what it does
Mizani is a scales library for Python graphics, inspired by Hadley Wickham's R Scales package. It provides tools to map data values to visual properties—colors, positions, sizes—and to format axes and legends. The package handles continuous and discrete scales, data transformations, and formatting functions that graphics systems need to render plots correctly.
It is typically used as a backend component in visualization libraries rather than directly by end users. The package depends on numpy, scipy, pandas, and tzdata to perform numerical transformations and handle time-zone-aware date formatting. With low install friction and support for Python 3.10+, it integrates cleanly into graphics pipelines that need robust, reusable scale logic.
Use it for:
- Format axis labels and legends in a custom graphics system or plotting library.
- Transform data values (log, sqrt, date) for visualization without modifying the original dataset.
- Generate color scales and palettes for multi-dimensional data visualization.
- Handle timezone-aware date formatting in time-series plots.
- Standardize scale behavior across multiple chart types in a graphics framework.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Mizani provides scales and transformations for graphics systems, handling data mapping, formatting, and axis/legend generation for visualization libraries.
Yes, if you are building or extending a graphics library that needs production-grade scale and formatting logic. No, if you are a data analyst looking for a direct plotting tool—use plotnine or matplotlib instead. The aging maintenance status and minimal recent activity suggest it is stable but not actively developed; evaluate whether you need active upstream support.
Install
mizani on PyPI
pip
pip install mizaniuv
uv add mizanipoetry
poetry add mizaniInstalling mizani
Before you install
Low friction installation with a pure Python wheel. Maintenance is aging—last release was 198 days ago and the repository shows minimal recent activity, though it remains active and not archived.
License in practice
BSD License (permissive) allows commercial and private use with minimal restrictions; you must retain copyright and license notices in distributions.
Quickstart
pip install mizani
from mizani.scales import scale_continuous
from mizani.formatters import date_format
# Use scales and formatters in your graphics pipeline
scale = scale_continuous()
formatter = date_format('%Y-%m-%d')
Requires Python 3.10 or later; depends on numpy, scipy, pandas, and tzdata.
Verify before relying
- Whether mizani is actively used in production graphics libraries or primarily in plotnine/ggplot2-style systems.
- Performance characteristics when handling large datasets or complex scale transformations.
- Compatibility with the latest versions of scipy and pandas beyond what classifiers declare.
Package facts
| License | Copyright (c) 2016, Hassan Kibirige All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — numpy, scipy, pandas, tzdata |
| Maintenance | aging — 198 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,401,046/month — #2,634 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: mizani-0.14.4-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
plotnineplotnine implements a grammar of graphics for…
permissive · top 5,000 on PyPI
ggplotggplot is a Python implementation of the…
permissive · top 15,000 on PyPI
bqscalesbqscales implements a grammar-of-graphics layer…
permissive · top 15,000 on PyPI
UpSetPlotUpSetPlot generates visualizations of set…
permissive · top 15,000 on PyPI
colorloverProvides a library of human-friendly color…
unclear · top 15,000 on PyPI
plotillePlotille renders plots, scatter plots,…
permissive · top 15,000 on PyPI
asciichartpyRenders line charts as ASCII art in the console…
permissive · top 15,000 on PyPI
CartopyCartopy makes it easy to draw maps for data…
permissive · top 5,000 on PyPI