Part-to-Whole
Nested Donut
Stacks concentric donut rings to show hierarchical composition, with each ring representing a level of the hierarchy.
Web Traffic by Device & Browser
Inner ring: device; outer ring: browser
View data (8 rows)
| Segment | Value | Device |
|---|---|---|
| Chrome | 38 | Desktop |
| Safari | 12 | Desktop |
| Firefox | 8 | Desktop |
| Chrome | 22 | Mobile |
| Safari | 13 | Mobile |
| Firefox | 2 | Mobile |
| Chrome | 3 | Tablet |
| Safari | 2 | Tablet |
Use a nested donut when…
- Comparing composition at two or three hierarchy levels
- When the audience is familiar with pie/donut charts
Avoid when…
- When there are more than 3 levels (rings get too thin)
- When precise comparisons between slices are needed
Data it needs
| Property | Value |
|---|---|
| Min Rows | 4 |
| Min Columns | 2 |
| Column Types | stringnumber |
| Notes | One row per leaf with an explicit parent column — the renderer rolls up inner-ring totals automatically. Mixing aggregate totals with leaves causes ring mismatches. |
Visual anatomy
Marks
arc
Channels
angle (proportion)radius (hierarchy level)color (category)
Axes
-
Guiding principles
Consider instead
Common mistakes
Adding too many rings, making inner ones unreadable
Not aligning child slices with parent boundaries
History
Nested donuts trace to early-2010s BI dashboards (Tableau, Power BI) which popularized them as a hierarchical extension of the donut chart.
Accessibility notes
Announce each ring level and its slices and provide a hierarchical table. Pair color hue with patterns or direct labels — adjacent ring segments often share similar fills, so color-only encoding fails for color-vision-deficient readers.
Related reading
Got data? Let's see what works.
Drop your CSV. You'll get a Nested Donut plus four alternatives - ranked by which one actually fits your data best.