Skip to content

Facet Grids

What are facet grids?

Facet grids create small multiples:

  • The same plot repeated for different subgroups
  • Helps compare patterns across segments

Examples:

  • Distribution by gender
  • Trend by region
  • Relationship by category
diagram How a facet grid is laid out mermaid
One category maps to columns, another (optional) maps to rows, and the same plot type is repeated in every cell.

Facet with displotdisplot

Facet distribution
import seaborn as sns
 
tips = sns.load_dataset("tips")
 
sns.displot(data=tips, x="total_bill", col="time", bins=20, kde=True)
Facet distribution
import seaborn as sns
 
tips = sns.load_dataset("tips")
 
sns.displot(data=tips, x="total_bill", col="time", bins=20, kde=True)

Facet with relplotrelplot

Facet relationship
import seaborn as sns
 
tips = sns.load_dataset("tips")
 
sns.relplot(data=tips, x="total_bill", y="tip", col="time", hue="sex")
Facet relationship
import seaborn as sns
 
tips = sns.load_dataset("tips")
 
sns.relplot(data=tips, x="total_bill", y="tip", col="time", hue="sex")

Using FacetGridFacetGrid directly

FacetGrid
import seaborn as sns
import matplotlib.pyplot as plt
 
tips = sns.load_dataset("tips")
 
g = sns.FacetGrid(tips, col="time", row="sex")
g.map_dataframe(sns.scatterplot, x="total_bill", y="tip")
 
plt.tight_layout()
FacetGrid
import seaborn as sns
import matplotlib.pyplot as plt
 
tips = sns.load_dataset("tips")
 
g = sns.FacetGrid(tips, col="time", row="sex")
g.map_dataframe(sns.scatterplot, x="total_bill", y="tip")
 
plt.tight_layout()

Visualize it

Each small panel is the same chart type, just filtered to one combination of row/column categories — easy to compare shapes side by side:

sketch A facet grid of small multiples p5.js
Each cell repeats the same chart type for one row/column combination, making side-by-side comparison easy.

Tips

  • Facets can get crowded—keep category counts small.
  • Facets are excellent for storytelling and comparisons.

Next

This wraps up the Seaborn phase — revisit the Phase Overview to see how all these lessons connect, or move on to the next module.

🧪 Try It Yourself

Exercise 1 – Facet a Distribution by Column

Exercise 2 – Add a Row Dimension

Exercise 3 – Map a Plot Function onto the Grid

If this helped you, consider buying me a coffee ☕

Buy me a coffee

Was this page helpful?

Let us know how we did