Open-source Python packages for economics diagrams.
Documentation · contact@econ-viz.org
EconViz is made of six packages. Two draw economics diagrams, and four are general-purpose building blocks they share.
| Repository | Description |
|---|---|
| utility‑viz | Publication-quality microeconomics diagrams: indifference curves, budget constraints and consumer equilibria, with a built-in solver and PNG / PDF / SVG / TikZ export. Version 2.0 is in beta. |
| principle‑viz | Market analysis and diagrams for Principles of Economics: supply and demand, taxes, price controls and welfare decomposition (CS, PS, DWL). |
| Repository | Description |
|---|---|
| mosaickit | A domain-neutral toolkit for assembling two-dimensional diagrams from scenes, layers, styles and renderers. |
| bezierkit | A small toolkit for constructing, analyzing and exporting Bézier curves, with SVG and TikZ output. |
| glyphkit | A domain-neutral typography and glyph geometry engine: font loading, text and math layout. |
| kinetickit | A domain-neutral engine for precise 2D and 3D animation. |
| Repository | Description |
|---|---|
| econ‑viz‑docs | Source of the econ-viz.org documentation site, built with MkDocs Material. |
| agora | Reference manuals for the EconViz packages. |
uv add --prerelease allow utility-vizfrom utility_viz import Canvas, levels, solve
from utility_viz.models import CobbDouglas
model = CobbDouglas(alpha=0.5, beta=0.5)
eq = solve(model, px=2.0, py=3.0, income=30.0)
cvs = Canvas(x_max=20, y_max=15, x_label="x", y_label="y")
cvs.add_utility(model, levels=levels.around(eq.utility, n=5))
cvs.add_budget(2.0, 3.0, 30.0, fill=True)
cvs.add_equilibrium(eq, show_ray=True)
cvs.save("cobb_douglas.png")| Consumer equilibrium | Price effect | Edgeworth box | Leontief |
|---|---|---|---|
| Demand shift | Tax welfare | Price ceiling | Tariff |
|---|---|---|---|
Coming from econ-viz 1.x? See the migration guide.
Issues and pull requests are welcome. See CONTRIBUTING.md to get started.
Questions, collaboration, or teaching use? Email contact@econ-viz.org.