figures#

The figures package renders the analysis artefacts as Matplotlib figures. Each figure is built by a function that takes a dataframe and returns a figure; a CLI subcommand resolves a cached analysis run (the latest of its stage unless --run names one), builds the figure, and writes a PDF and a PNG under artefacts/figures/<stage>/<run-hash>/ beside a JSON sidecar that records the source run and the package version.

Figures by page#

Each figure belongs to a hypothesis article or a foundational page and is drawn by one builder module. The table maps a documentation page to its figures, the module that builds them, and the command that renders them.

Page

Figures

Module

Command

\(H_0^A\), \(H_0^D\): invariance

local_plane_*, local_panels_*, local_specificity, invariance_process_*

figures.trajectory_local, figures.invariance

local-trajectory, local-panels, local-specificity, invariance

\(H_0^B\): prevalence

prevalence_*, prevalence_stacked_*

figures.prevalence

prevalence

\(H_0^E\): direction

local_directional_*

figures.trajectory_local

local-directional

\(H_0^F\): attribution by category

category_decomposition, dense_features

figures.category_decomposition, figures.dense_features

category-decomposition, dense-features

\(H_0^G\): attribution by referent

referent_decomposition

figures.referent_decomposition

referent-decomposition

Screening orderings with the atlas

displacement_atlas

figures.atlas

atlas

Do demographics explain the drift?

demographic_conditioning

figures.demographic_conditioning

demographic-conditioning

Reproducing the reference classes

reproduction

figures.reproduction

reproduce

Selecting the number of classes

selection_criteria

figures.selection

select

Replicating in the SSC

replication

figures.replication

replicate

Stability under refitting

stability

figures.stability

stability

The minimum stratum size

stratum_size

figures.nmin

nmin

The refit pilot

trajectory_*, roughness

figures.trajectory

trajectory

Publishing#

artefacts/ is gitignored, so the figures do not reach the published site on their own. figures publish copies the rendered PNGs into docs/source/_figures/, the committed directory the pages embed, and writes a provenance sidecar beside each recording the source stage, run hash, and commit; a figure not yet rendered is skipped. Only the PNGs cross into the committed tree: they are aggregate, non-disclosive summaries, so committing them stays within the data governance that keeps the rest of artefacts/ out of the history.

Reference