piccolbo/altair_recipes

View on GitHub
altair_recipes/barchart.py

Summary

Maintainability
A
45 mins
Test Coverage
"""Generate barcharts."""
from .signatures import bivariate_recipe, use_color
import altair as alt
from autosig import autosig, Signature


@autosig(bivariate_recipe + Signature(color=use_color(position=3)))
def barchart(data=None, x=0, y=1, color=False, height=600, width=800):
    """Generate a barchart."""
    enc_args = dict(x=x + ":N", y=y)
    if color:
        enc_args["color"] = enc_args["x"]

    return alt.Chart(data, height=height, width=width).mark_bar().encode(**enc_args)