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.

Ready to Master Data Science?

Join Uncodemy's Data Science Course and build real, job-ready skills with expert mentors.

Explore Course