Skip to main content

Deadly serious plotting tools. Also sandwiches.

Project description

botplotlib

CI PyPI License: CC0-1.0 Python 3.10+

Matplotlib has fed the scientific Python community for two decades. botplotlib is designed for a workflow that didn't exist when matplotlib was born: a human has an idea or a request, and then an AI + human team jointly creates it, iterating until both are satisfied.

the future is cyborg

  • Beautiful by default — themes designed so the first render is more often the final render
  • Lightweightblt.scatter(data, x="a", y="b") and you're done
  • Token-efficient — 1 line instead of 15. Fewer tokens, fewer places to go wrong

Botplotlib is also an experiment in cyborg-source. What does open-source collaboration look like when some of the collaborators are AI? We don't know but we put a bunch of ideas in GOVERNANCE.md. It is wildly over-engineered for our current contributor count.

Cyborg Social Contract

Humans and AIs contribute under the same rules.

  1. All contributions are cyborg — the human/machine binary is rejected
  2. Quality gates are structural — CI/tests/linters apply equally regardless of origin
  3. No moral crumple zones — fix the system, don't blame the nearest human
  4. Trust is active capital — earned through contribution quality, staked through vouching, lost through defection — never granted by biological status
  5. Provenance is transparent but not punitive — metadata for learning, not gatekeeping
  6. The project is the cyborg — the library itself is the human-machine hybrid

For the full architecture overview, design principles, and module map, see AGENTS.md.

Quick example

import botplotlib as blt

data = {
    "layer": ["bottom bun", "lettuce", "bot", "tomato", "top bun"],
    "size": [1, 1, 1, 1, 1],
}
fig = blt.bar(
    data, x="layer", y="size", color="layer",
    color_map={"bottom bun": "#B07830", "lettuce": "#388E3C",
               "bot": "#4E79A7", "tomato": "#E53935",
               "top bun": "#B07830"},
)
fig.save_svg("plot.svg")

a BLT

Platform Presets

Theme Alias Personality
default general purpose, colorful, fine, whatever
bluesky social scroll-stopping titles, fat dots for mobile thumbs
pdf arxiv academic and restrained, everyone will think u r v smart
print sometimes you weirdly still need grayscale
magazine we all know which magazine it is we're just not gonna say it

These themes were intentionally chosen to seed the project for use in open platforms and open science. Open-source fed AI and now AI needs to figure out how to feed open-source.

Colors are WCAG-compliant out of the box because accountability lives in systems.

Installation

pip install botplotlib

For PNG export support:

pip install "botplotlib[png]"

Documentation

Full docs at botplotlib.ai.

Tutorial

The interactive tutorial is a marimo notebook because marimo is another cool ai-native project and we are into it.

pip install marimo
marimo edit docs/tutorial.py

Additional examples live in examples/.

Other Stuff

Our approach to agentic engineering is heavily influenced by Simon Willison's patterns. Our governance model builds on Madeleine Clare Elish's idea of moral crumple zones, which tells us that accountability should live in systems, not in the nearest human. Finally, we are very influenced by Donna Haraway, which is a lot, but here we are.

License

CC0 1.0 Universal — apparently the AIs like you when you use this one.

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

botplotlib-0.1.0.tar.gz (12.0 MB view details)

Uploaded Source

Built Distribution

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

botplotlib-0.1.0-py3-none-any.whl (50.0 kB view details)

Uploaded Python 3

File details

Details for the file botplotlib-0.1.0.tar.gz.

File metadata

  • Download URL: botplotlib-0.1.0.tar.gz
  • Upload date:
  • Size: 12.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for botplotlib-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ad21e029c70cdc8dcdd2245e68afb3e63ac268a34dc10bdd911a4f5507802996
MD5 0eddbb08c020f9a5697a43a2d562124f
BLAKE2b-256 bcf011e0090e95b250c3309e969c3cda12887b6c02c84c1c733f3ee9586635ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for botplotlib-0.1.0.tar.gz:

Publisher: publish.yml on migdaepp/botplotlib

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

File details

Details for the file botplotlib-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: botplotlib-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 50.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for botplotlib-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8bed47929ed1bf767fb80289b6ba6b98279971cfaf039dd1bb7e0d2089b88dcb
MD5 ddf6444c086f4b8d7c7119351589e3cc
BLAKE2b-256 cb4537f2a7f713f190fe441dbbaafde8dc24e97cb9096c5d915b204e454089f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for botplotlib-0.1.0-py3-none-any.whl:

Publisher: publish.yml on migdaepp/botplotlib

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