class altair.LayerChart(data=Undefined, layer=(), **kwargs)

A Chart with layers within a single panel Mapping(required=[layer])

layerList(anyOf(LayerSpec, UnitSpec))

Layer or single view specifications to be layered.

Note : Specifications inside layer cannot use row and column channels as layering facet specifications is not allowed. Instead, use the facet operator and place a layer inside a facet.

autosizeanyOf(AutosizeType, AutoSizeParams)

How the visualization size should be determined. If a string, should be one of "pad", "fit" or "none". Object values can additionally specify parameters for content sizing and automatic resizing.

Default value : pad

backgroundanyOf(Color, ExprRef)

CSS color property to use as the background of the entire view.

Default value: "white"


Vega-Lite configuration object. This property can only be defined at the top-level of a specification.

dataanyOf(Data, None)

An object describing the data source. Set to null to ignore the parent’s data source. If no data is set, it is derived from the parent.


A global data store for named datasets. This is a mapping from names to inline datasets. This can be an array of objects or primitive values or a string. Arrays of primitive values are ingested as objects with a data property.


Description of this mark for commenting purpose.


A shared key-value mapping between encoding channels and definition of fields in the underlying layers.

heightanyOf(float, string, Step)

The height of a visualization.

  • For a plot with a continuous y-field, height should be a number. - For a plot with either a discrete y-field or no y-field, height can be either a number indicating a fixed height or an object in the form of {step: number} defining the height per discrete step. (No y-field is equivalent to having one discrete step.) - To enable responsive sizing on height, it should be set to "container".

Default value: Based on config.view.continuousHeight for a plot with a continuous y-field and config.view.discreteHeight otherwise.

Note: For plots with row and column channels, this represents the height of a single view and the "container" option cannot be used.

See also: height documentation.


Name of the visualization for later reference.

paddinganyOf(Padding, ExprRef)

The default visualization padding, in pixels, from the edge of the visualization canvas to the data rectangle. If a number, specifies padding for all sides. If an object, the value should have the format {"left": 5, "top": 5, "right": 5, "bottom": 5} to specify padding for each side of the visualization.

Default value : 5


Dynamic variables that parameterize a visualization.


An object defining properties of the geographic projection shared by underlying layers.


Scale, axis, and legend resolutions for view composition specifications.

titleanyOf(Text, TitleParams)

Title for the plot.


An array of data transformations such as filter and new field calculation.


Optional metadata that will be passed to Vega. This object is completely ignored by Vega and Vega-Lite and can be used for custom metadata.


An object defining the view background’s fill and stroke.

Default value: none (transparent)

widthanyOf(float, string, Step)

The width of a visualization.

  • For a plot with a continuous x-field, width should be a number. - For a plot with either a discrete x-field or no x-field, width can be either a number indicating a fixed width or an object in the form of {step: number} defining the width per discrete step. (No x-field is equivalent to having one discrete step.) - To enable responsive sizing on width, it should be set to "container".

Default value: Based on config.view.continuousWidth for a plot with a continuous x-field and config.view.discreteWidth otherwise.

Note: For plots with row and column channels, this represents the width of a single view and the "container" option cannot be used.

See also: width documentation.


URL to JSON schema for a Vega-Lite specification. Unless you have a reason to change this, use Setting the $schema property allows automatic validation and autocomplete in editors that support JSON schema.

__init__(data=Undefined, layer=(), **kwargs)


__init__([data, layer])



Add one or more selections to all subcharts.

configure([arc, area, aria, autosize, axis, ...])

Config schema wrapper

configure_arc([align, angle, aria, ...])

RectConfig schema wrapper

configure_area([align, angle, aria, ...])

AreaConfig schema wrapper

configure_axis([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisBand([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisBottom([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisDiscrete([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisLeft([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisPoint([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisQuantitative([aria, ...])

AxisConfig schema wrapper

configure_axisRight([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisTemporal([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisTop([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisX([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisXBand([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisXDiscrete([aria, ...])

AxisConfig schema wrapper

configure_axisXPoint([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisXQuantitative([aria, ...])

AxisConfig schema wrapper

configure_axisXTemporal([aria, ...])

AxisConfig schema wrapper

configure_axisY([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisYBand([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisYDiscrete([aria, ...])

AxisConfig schema wrapper

configure_axisYPoint([aria, bandPosition, ...])

AxisConfig schema wrapper

configure_axisYQuantitative([aria, ...])

AxisConfig schema wrapper

configure_axisYTemporal([aria, ...])

AxisConfig schema wrapper

configure_bar([align, angle, aria, ...])

BarConfig schema wrapper

configure_boxplot([box, extent, median, ...])

BoxPlotConfig schema wrapper

configure_circle([align, angle, aria, ...])

MarkConfig schema wrapper

configure_concat([columns, spacing])

CompositionConfig schema wrapper

configure_errorband([band, borders, extent, ...])

ErrorBandConfig schema wrapper

configure_errorbar([extent, rule, size, ...])

ErrorBarConfig schema wrapper

configure_facet([columns, spacing])

CompositionConfig schema wrapper

configure_geoshape([align, angle, aria, ...])

MarkConfig schema wrapper

configure_header([format, formatType, ...])

HeaderConfig schema wrapper

configure_headerColumn([format, formatType, ...])

HeaderConfig schema wrapper

configure_headerFacet([format, formatType, ...])

HeaderConfig schema wrapper

configure_headerRow([format, formatType, ...])

HeaderConfig schema wrapper

configure_image([align, angle, aria, ...])

RectConfig schema wrapper

configure_legend([aria, clipHeight, ...])

LegendConfig schema wrapper

configure_line([align, angle, aria, ...])

LineConfig schema wrapper

configure_mark([align, angle, aria, ...])

MarkConfig schema wrapper

configure_point([align, angle, aria, ...])

MarkConfig schema wrapper

configure_projection([center, clipAngle, ...])

ProjectionConfig schema wrapper

configure_range([category, diverging, ...])

RangeConfig schema wrapper

configure_rect([align, angle, aria, ...])

RectConfig schema wrapper

configure_rule([align, angle, aria, ...])

MarkConfig schema wrapper

configure_scale([bandPaddingInner, ...])

ScaleConfig schema wrapper

configure_selection([interval, multi, single])

SelectionConfig schema wrapper

configure_square([align, angle, aria, ...])

MarkConfig schema wrapper

configure_text([align, angle, aria, ...])

MarkConfig schema wrapper

configure_tick([align, angle, aria, ...])

TickConfig schema wrapper

configure_title([align, anchor, angle, ...])

TitleConfig schema wrapper

configure_trail([align, angle, aria, ...])

LineConfig schema wrapper

configure_view([clip, continuousHeight, ...])

ViewConfig schema wrapper

copy([deep, ignore])

Return a copy of the object

display([renderer, theme, actions])

Display chart in Jupyter notebook or JupyterLab

encode([angle, color, column, description, ...])

FacetedEncoding schema wrapper

facet([facet, row, column, data, columns])

Create a facet chart from the current chart.

from_dict(dct[, validate, _wrapper_classes])

Construct class from a dictionary representation

from_json(json_string[, validate])

Instantiate the object from a valid JSON string

interactive([name, bind_x, bind_y])

Make chart axes scales interactive

project([type, center, clipAngle, ...])

Add a geographic projection to the chart.


Set top-level properties of the Chart.

repeat([repeat, row, column, layer, columns])

Return a RepeatChart built from the chart

resolve_axis([x, y])

AxisResolveMap schema wrapper

resolve_legend([angle, color, fill, ...])

LegendResolveMap schema wrapper


Resolve references in the context of this object's schema or root schema.

resolve_scale([angle, color, fill, ...])

ScaleResolveMap schema wrapper

save(fp[, format, ...])

Save a chart to file in a variety of formats

serve([ip, port, n_retries, files, ...])

Open a browser window and display a rendering of the chart

show([embed_opt, open_browser])

Show the chart in an external browser window.

to_dict(*args, **kwargs)

Convert the chart to a dictionary suitable for JSON export

to_html([base_url, output_div, ...])

to_json([validate, ignore, context, indent, ...])

Emit the JSON representation for this object as a string.

transform_aggregate([aggregate, groupby])

Add an AggregateTransform to the schema.

transform_bin([as_, field, bin])

Add a BinTransform to the schema.

transform_calculate([as_, calculate])

Add a CalculateTransform to the schema.

transform_density(density[, as_, bandwidth, ...])

Add a DensityTransform to the spec.

transform_filter(filter, **kwargs)

Add a FilterTransform to the schema.

transform_flatten(flatten[, as_])

Add a FlattenTransform to the schema.

transform_fold(fold[, as_])

Add a FoldTransform to the spec.

transform_impute(impute, key[, frame, ...])

Add an ImputeTransform to the schema.

transform_joinaggregate([joinaggregate, groupby])

Add a JoinAggregateTransform to the schema.

transform_loess(on, loess[, as_, bandwidth, ...])

Add a LoessTransform to the spec.

transform_lookup([lookup, from_, as_, default])

Add a DataLookupTransform or SelectionLookupTransform to the chart

transform_pivot(pivot, value[, groupby, ...])

Add a pivot transform to the chart.

transform_quantile(quantile[, as_, groupby, ...])

Add a quantile transform to the chart

transform_regression(on, regression[, as_, ...])

Add a RegressionTransform to the chart.


Add a SampleTransform to the schema.

transform_stack(as_, stack, groupby[, ...])

Add a StackTransform to the schema.

transform_timeunit([as_, field, timeUnit])

Add a TimeUnitTransform to the schema.

transform_window([window, frame, groupby, ...])

Add a WindowTransform to the schema

validate(instance[, schema])

Validate the instance against the class schema in the context of the rootschema.

validate_property(name, value[, schema])

Validate a property against property schema in the context of the rootschema