Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Kaxe

BoxPlot

Kaxe is a lightweight, pure-Python plotting library for publication-quality figures in LaTeX documents. Create plots and charts with a simple object-oriented API, style them for A4 pages, and export to PNG or SVG.

Documentation: kaxe.readthedocs.io

Installation

pip install kaxe          # 2D plotting (default)
pip install kaxe[viewer]  # add interactive desktop viewer (pyglet)
pip install kaxe[3d]      # add 3D plotting (OpenGL)
pip install kaxe[pdf]     # add PDF export

Quick example

import kaxe

plt = kaxe.Plot([-5, 5, -5, 5])
plt.add(kaxe.Function2D(lambda x: x**2 - 4))
plt.add(kaxe.Points2D([1, 2, 3], [1, 4, 9]))
plt.theme(kaxe.Themes.A4Medium)
plt.title("$x^2 - 4$")
plt.show()                # streams to viewer if open, or opens system viewer
plt.save("figure.png")
plt.save("figure.svg")

Interactive Plot Viewer (Infinite Canvas)

Kaxe includes a dedicated, lightweight OpenGL workspace powered by pyglet so you can arrange, inspect, and compare multiple plots on an infinite canvas without cluttering your desktop with preview windows.

  1. Start the viewer in a terminal:
    kaxe viewer
    
  2. Tag and show your plots:
    # Tag plots with an ID to manage them on the board:
    plt1 = kaxe.Plot().id("loss").title("Training Loss")
    plt1.show()
    
    plt2 = kaxe.Plot().id("accuracy").title("Validation Accuracy")
    plt2.show()
    

When the viewer is open, .show() instantly streams plots to cards on your canvas. If you re-run code with the same ID, the card updates in-place and preserves previous runs as versions (v1, v2, etc.). If the viewer is closed, .show() automatically falls back to your operating system's default viewer.

Canvas & Card Controls:

  • Click & Drag on a Card: Move that card freely across the canvas
  • Click & Drag on Empty Space: Pan the camera across the workspace
  • Mouse Scroll: Smooth zoom anchored to cursor
  • [A]: Auto-arrange all cards in a neat row
  • [Space] or [R]: Fit all cards on the canvas into view
  • [1]: View canvas at 100% native pixel scale
  • [←] / [→]: Cycle through versions (v1, v2, ...) of the selected card
  • [Backspace] / [Delete]: Remove the selected card from the board
  • [C] (or Cmd/Ctrl+C): Copy selected plot to system clipboard
  • [S] (or Cmd/Ctrl+S): Save selected plot to timestamped PNG
  • [H]: Toggle status & shortcuts HUD

See the getting started guide, recipes, styling guide, and export guide for the full API.

Goals

Kaxe was made to create simple, aesthetic graphs for articles, reports, and other academic work in LaTeX:

  • Plots that fit the look of LaTeX documents (Computer Modern math via fondi)
  • A straightforward object-oriented interface: create a window, add objects, style, save

Examples of plots

BoxPlot Polar plot PrettyPlot3D2 Contour grid Contour same AllLegends Functions Points Equations Globallight

Metadata

Release files for kaxe 1.8.1.dev5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kaxe 1.8.1.dev5
File Size Uploaded Provenance
kaxe-1.8.1.dev5.tar.gz 4.0 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for kaxe 1.8.1.dev5
File Interpreter ABI Platform
kaxe-1.8.1.dev5-py3-none-any.whl Python 3 none any Details

Total release size: 8.0 MB

Release files / kaxe-1.8.1.dev5.tar.gz

Download URL kaxe-1.8.1.dev5.tar.gz
Size 4.0 MB
Tags Source
SHA-256 checksum
How to use checksums
f5726e62226d4869d5edc80c54b3388a5f4655d4ac22eba09e42214617f909bc
BLAKE2b-256 checksum
How to use checksums
b7e98bf30d2b90fa5e5f3d75453ffc8023ce79e3dc12fbe153954910d7805e13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / kaxe-1.8.1.dev5-py3-none-any.whl

Download URL kaxe-1.8.1.dev5-py3-none-any.whl
Size 4.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
93e88584a2878291681791ab4f97bfce2d2007c114c6d44fe2b90ffb67dd0200
BLAKE2b-256 checksum
How to use checksums
ddbbe418b188e080da61bdd2fdba1adb99cde7d3a5d57122c4319fa47600d71e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Security for kaxe 1.8.1.dev5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page