Skip to main content

A Python toolkit for producing publication-quality microeconomics diagrams.

Project description

Econ-Viz

PyPI Python License Tests Coverage

A Python toolkit for producing publication-quality microeconomics diagrams. Define utility functions declaratively, solve for consumer equilibria, and export figures as PNG, PDF, SVG, or pure TikZ — all in a few lines of code.

Installation

pip install econ-viz

Requires Python 3.12 or later.

Quick Start

from econ_viz import Canvas, levels, solve
from econ_viz.models import CobbDouglas

model = CobbDouglas(alpha=0.5, beta=0.5)
eq    = solve(model, px=2.0, py=3.0, income=30.0)
lvls  = levels.around(eq.utility, n=5)

cvs = Canvas(x_max=20, y_max=15, x_label="x", y_label="y",
             title="Cobb-Douglas  $x^{0.5} y^{0.5}$")
cvs.add_utility(model, levels=lvls)
cvs.add_budget(2.0, 3.0, 30.0, fill=True)
cvs.add_equilibrium(eq, show_ray=True)
cvs.save("cobb_douglas.png")

TikZ export writes a standalone LaTeX document with only TikZ drawing commands:

cvs.save("cobb_douglas.tex", tikz_scale=0.0125)

The default TikZ scale maps a 6 inch wide Matplotlib figure to about 7.5 cm.

Cobb-Douglas indifference map with budget line and equilibrium point

Notebook

The project ships with an interactive playground notebook:

notebook/econ-viz Playground.ipynb

Download it and open it in Jupyter, VS Code, or Colab. The first code cell upgrades econ-viz from PyPI for fresh runtimes.

Highlights

  • Built-in models: Cobb-Douglas, Leontief, Perfect Substitutes, CES, Satiation, Quasi-Linear, Stone-Geary, and Translog
  • Solver support for interior, kink, boundary, and corner solutions
  • Closed-form demand helpers with solution_tex(...)
  • Comparative tools including comparative_statics(...) and slutsky_matrix(...)
  • Multi-panel Figure layouts, PricePath / IncomePath, and linked DemandDiagram
  • CLI support for plotting and closed-form demand output

Additional Tools

Closed-form Marshallian demand in TeX:

from econ_viz import solution_tex
from econ_viz.models import CobbDouglas

tex = solution_tex(CobbDouglas(alpha=0.4, beta=0.6))

Slutsky matrix:

from econ_viz import slutsky_matrix
from econ_viz.models import CobbDouglas

S = slutsky_matrix(CobbDouglas(alpha=0.4, beta=0.6), px=2.0, py=3.0, income=60.0)
# S.s_xx, S.s_xy, S.s_yx, S.s_yy

CLI

econ-viz help
econ-viz models
econ-viz solve-tex --model cobb-douglas --symbolic-params

Plotting example:

econ-viz plot --model cobb-douglas --alpha 0.5 --beta 0.5 \
              --px 2 --py 3 --income 30 \
              --fill --show-ray \
              --output cobb_douglas.png

Documentation

Full documentation lives at econ-viz.org.

License

MIT © Anthony Sung

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

econ_viz-1.5.0.tar.gz (67.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

econ_viz-1.5.0-py3-none-any.whl (93.4 kB view details)

Uploaded Python 3

File details

Details for the file econ_viz-1.5.0.tar.gz.

File metadata

  • Download URL: econ_viz-1.5.0.tar.gz
  • Upload date:
  • Size: 67.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for econ_viz-1.5.0.tar.gz
Algorithm Hash digest
SHA256 9d4dfce1b822804ac737dbeae95f09d1c32205915b3a220252990f5e4581b8eb
MD5 bc98fab514d367e4e2e9ea50682d49a3
BLAKE2b-256 3791736fe09a0b0fa435f92c4f1df7a0faab5e6edd57ec0c1257ddd98a03e3a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for econ_viz-1.5.0.tar.gz:

Publisher: publish.yml on EconViz/econ-viz

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file econ_viz-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: econ_viz-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 93.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for econ_viz-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f49fe021c73a596a11de3c4805db36377ceb08fa7b3df534790ea5f20711d83c
MD5 b57e61c5dd1608786f98f816c30fae09
BLAKE2b-256 800a6d7ea9a9f3db9a31218933ec092a6c968580157de27c7aed8ba92ca4bd38

See more details on using hashes here.

Provenance

The following attestation bundles were made for econ_viz-1.5.0-py3-none-any.whl:

Publisher: publish.yml on EconViz/econ-viz

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page