Skip to main content

mpl-template: matplotlib report template constructor

Project description

mpl-template

A python class for creating full report figures, including borders, titleblocks, logos, and content, entirely within matplotlib.

Build Status codecov

Docs

Quick start

Simply importing mpl_template lets you use the report template module.

import matplotlib as mpl
from mpl_template import template
import math

report_fig = template.Template(figsize=(8.5, 11), draft=True, scriptname='template.py')

title_block = [
    {
        'name': 'title',
        'text': {
            's': 'Example Figure',
            'x': 0.5,
            'y': 0.5,
            'va': 'center',
            'ha': 'center',
        }
    },
    {},{},{},{},
]
report_fig.titleblock_content = title_block
report_fig.path_text = 'template.py'
fig = report_fig.setup_figure()
page_ax = report_fig.add_page()

# create a sub-gridspec that will be used for the main image
left, right, top, bottom = report_fig.margins
main = report_fig.gsfig[4 + top:-(report_fig.t_h + bottom + 8), 8 + left:-(right + 8)]
gs_timeseries = mpl.gridspec.GridSpecFromSubplotSpec(3, 1, main, hspace=0.3, wspace=0.3)

for n in range(3):
    ax = fig.add_subplot(gs_timeseries[n])
    ax.set_ylim(-2.5, 2.5)
    plot = ax.plot([math.sin(i * (n + 1)) for i in range(0, 100)])

Example Report Document

Installation

Dependencies

requires: matplotlib optional: pillow, requests tests: pytest, pytest-mpl, pytest-cov

Official Releases

TODO: release on pypi For now, please install from source.

Development Builds

This is a pure-python package, so building from source is easy on all platforms:

git clone https://github.com/austinorr/mpl-template.git
cd mpl-template
pip install -e .

Testing

Testing is done via pytest: $pytest --mpl

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

mpl_template-0.5.0.tar.gz (2.8 MB view details)

Uploaded Source

Built Distribution

mpl_template-0.5.0-py3-none-any.whl (2.8 MB view details)

Uploaded Python 3

File details

Details for the file mpl_template-0.5.0.tar.gz.

File metadata

  • Download URL: mpl_template-0.5.0.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for mpl_template-0.5.0.tar.gz
Algorithm Hash digest
SHA256 33bd3f80160dfa39dcc341384cc5dd0c44d30b15a967723cfdf49c5d78a5ac3c
MD5 827e9e4cd784489e318a21f9bad27328
BLAKE2b-256 b3afffcc0bf574ea3556cbff122be136aa5df2eb5fd5ba60bcde2092b09d48cf

See more details on using hashes here.

File details

Details for the file mpl_template-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mpl_template-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58dd94eaab699e321de9b8018187527e15b331aa879a9ece85dfbd623df0fc08
MD5 11ccfdd172a32e135a5f22528b28833c
BLAKE2b-256 d8471bc0eab522771fe10a73cfad18a40dae3cf1185ab00ec0bd63c5d3f6c427

See more details on using hashes here.

Supported by

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