Waffle Charts
A waffle chart represents proportions using a grid of small squares (commonly a 10x10 grid of 100 squares), where each square represents a unit and groups of colored squares represent the share held by each category - an alternative to the traditional pie chart.
Why Use a Waffle Chart
- Easier for readers to estimate exact percentages than angular pie slices
- Works well for part-to-whole comparisons, especially with percentages out of 100
- Visually engaging for dashboards and reports
Plotting in Python
from pywaffle import Waffle
import matplotlib.pyplot as plt
data = {"Product A": 45, "Product B": 30, "Product C": 25}
plt.figure(
FigureClass=Waffle,
rows=10,
values=data,
colors=["#ff5421", "#1f6feb", "#2e7d32"],
legend={"loc": "upper left", "bbox_to_anchor": (1, 1)}
)
plt.show()
Waffle Chart vs Pie Chart
Both show part-to-whole relationships, but a waffle chart's grid layout makes it easier to compare category sizes precisely, while a pie chart is often quicker to read for a small number of very unequal categories.
Waffle charts work best with a small number of categories (typically under six) - beyond that, distinguishing colors within the grid becomes difficult.