Part of a whole

Circle-packing chart

Represents hierarchy through circle containment and values through circle areas.

  • Chart
  • Hierarchy
  • Composition

What it answers

What groups contain which items and how large are they?

Shape
Nested circles
What it shows
Containment and dominant members.

Example

The question

How does revenue break down from category to product line?

Revenue by category and product line, EUR million (circle packing)

Revenue by category and product line, EUR million (circle packing)Each outlined circle is a category holding one circle per product line, sized by revenue. Computing 33 (laptops 18, monitors 9, tablets 6); mobile 21 (phones 14, cases 4, chargers 3); audio 15 (headphones 8, speakers 7); accessories 5 (cables 3, bags 2). EUR million.LaptopsMonitorsTabletsComputingPhonesMobile8SpeakersAudioAccessoriesOuter circles: categoriesInner circles: product lines,area in proportion to revenue
Revenue by category and product line, EUR million (circle packing)Each outlined circle is a category holding one circle per product line, sized by revenue. Computing 33 (laptops 18, monitors 9, tablets 6); mobile 21 (phones 14, cases 4, chargers 3); audio 15 (headphones 8, speakers 7); accessories 5 (cables 3, bags 2). EUR million.LaptopsMonitorsTabletsComputingPhonesMobile87AudioAccessories
Each outlined circle is a category holding one circle per product line, sized by revenue. Computing 33 (laptops 18, monitors 9, tablets 6); mobile 21 (phones 14, cases 4, chargers 3); audio 15 (headphones 8, speakers 7); accessories 5 (cables 3, bags 2). EUR million.

Illustrative data. It belongs to no company.

When to use it

Use it when

Exploring nested groups where structure matters more than precise totals.

Avoid it when

When unused packing space could be mistaken for missing data.

How to read it

Read containment for hierarchy and circle area for size.

Note

Packing gaps mean enclosing area is not a simple additive total.

The data you need

Layout
Parent-child table
Fields
NodeID: text; ParentID: text/blank; Label: text; Value: number when size is encoded
One row is
One node in a parent-child hierarchy. What is the grain?
Rules
Node IDs must be unique. Parents must exist. Reject cycles. Define leaf-only versus inclusive parent values.
Optional
Alternative: Level1,Level2...,Value. Tree diagrams can omit Value.
Preparation
Validate unique node IDs, parent links, roots and absence of cycles. For size-encoded hierarchies, state whether totals are leaf-only or inclusive.
Units
Tree levels and branch position are structural. Size-encoded components use a named value unit; parent shares divide by the chosen parent total.
Example of the input layout: Parent-child tableA parent-child table: each row names its parent, which together form the tree.NodeParentTopATopBTopA1AA2ATopABA1A2
A parent-child table: each row names its parent, which together form the tree.

Worked example

A contains circles of 20 and 40. Their enclosing circle also contains packing gaps, so its drawn area is not simply 60 equal area units.

NodeIDParentIDLabelValue
rootAll100
arootA60
brootB40