lets_plot.facet_grid

lets_plot.facet_grid(x=None, y=None, *, scales=None, x_order=1, y_order=1, x_format=None, y_format=None)

Splits data by one or two faceting variables. For each data subset creates a plot panel and lays out panels as grid. The grid columns are defined by X faceting variable and rows are defined by Y faceting variable.

Parameters
xstr

Variable name which defines columns of the facet grid.

ystr

Variable name which defines rows of the facet grid.

scalesstr

Specifies whether scales are shared across all facets. ‘fixed’ - shared (the default), ‘free’ - vary across both rows and columns, ‘free_x’ or ‘free_y’ - vary across rows or columns respectively.

x_orderint, default=1

Specifies ordering direction of columns. 1 - ascending, -1 - descending, 0 - no ordering.

y_orderint, default=1

Specifies ordering direction of rows. 1 - ascending, -1 - descending, 0 - no ordering.

x_formatstr

Specifies the format pattern for displaying faceting values in columns.

y_formatstr

Specifies the format pattern for displaying faceting values in rows.

Returns
FeatureSpec

Facet grid specification.

Notes

Format pattern in the x_format / y_format parameters can be just a number format (like ‘d’) or a string template where number format is surrounded by curly braces: “{d} cylinders”.

For example:

  • ‘.2f’ -> ‘12.45’,

  • ‘Score: {.2f}’ -> ‘Score: 12.45’,

  • ‘Score: {}’ -> ‘Score: 12.454789’.

For more info see https://lets-plot.org/pages/formats.html.

Examples

1import numpy as np
2from lets_plot import *
3LetsPlot.setup_html()
4n = 100
5np.random.seed(42)
6x = np.random.normal(size=n)
7group = np.random.choice(['a', 'b'], size=n)
8ggplot({'x': x, 'group': group}, aes(x='x')) + \
9    geom_histogram() + facet_grid(x='group')