Skip to content

Commit db24028

Browse files
spec: add circlepacking-basic specification (#2506)
## New Specification: `circlepacking-basic` Related to #2498 --- ### specification.md # circlepacking-basic: Circle Packing Chart ## Description A circle packing chart displays hierarchical data as nested circles, where each circle contains smaller circles representing its children. Circle size is proportional to node value, and circles are packed efficiently without overlap. This visualization excels at revealing hierarchical structures while simultaneously showing quantitative relationships through area encoding. ## Applications - File and folder size visualization showing directory hierarchy and storage consumption - Organizational structure display with team sizes proportional to headcount or budget - Portfolio composition analysis breaking down investments by asset class and holdings - Taxonomy or classification hierarchies with proportional representation of categories ## Data - `id` (string) - unique identifier for each node - `parent` (string) - parent node identifier (null for root) - `value` (numeric) - size value determining circle area (for leaf nodes) - `label` (string) - display name for the node - Size: 20-200 nodes across 2-4 hierarchy levels ## Notes - Pack circles efficiently using force simulation or specialized packing algorithms - Color by depth level or category to distinguish hierarchy levels - Display labels for larger circles; smaller circles may show labels on hover - Scale circle sizes by area (not radius) for accurate visual perception - Root circle should encompass all children with appropriate padding --- **Next:** Add `approved` label to the issue to merge this PR. --- :robot: *[spec-create workflow](https://github.com/MarkusNeusinger/pyplots/actions/runs/20585342218)* Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 611b3b5 commit db24028

2 files changed

Lines changed: 56 additions & 0 deletions

File tree

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# circlepacking-basic: Circle Packing Chart
2+
3+
## Description
4+
5+
A circle packing chart displays hierarchical data as nested circles, where each circle contains smaller circles representing its children. Circle size is proportional to node value, and circles are packed efficiently without overlap. This visualization excels at revealing hierarchical structures while simultaneously showing quantitative relationships through area encoding.
6+
7+
## Applications
8+
9+
- File and folder size visualization showing directory hierarchy and storage consumption
10+
- Organizational structure display with team sizes proportional to headcount or budget
11+
- Portfolio composition analysis breaking down investments by asset class and holdings
12+
- Taxonomy or classification hierarchies with proportional representation of categories
13+
14+
## Data
15+
16+
- `id` (string) - unique identifier for each node
17+
- `parent` (string) - parent node identifier (null for root)
18+
- `value` (numeric) - size value determining circle area (for leaf nodes)
19+
- `label` (string) - display name for the node
20+
- Size: 20-200 nodes across 2-4 hierarchy levels
21+
22+
## Notes
23+
24+
- Pack circles efficiently using force simulation or specialized packing algorithms
25+
- Color by depth level or category to distinguish hierarchy levels
26+
- Display labels for larger circles; smaller circles may show labels on hover
27+
- Scale circle sizes by area (not radius) for accurate visual perception
28+
- Root circle should encompass all children with appropriate padding
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Specification-level metadata for circlepacking-basic
2+
# Auto-synced to PostgreSQL on push to main
3+
4+
spec_id: circlepacking-basic
5+
title: Circle Packing Chart
6+
7+
# Specification tracking
8+
created: 2025-12-29T23:55:27Z
9+
updated: null
10+
issue: 2498
11+
suggested: MarkusNeusinger
12+
13+
# Classification tags (applies to all library implementations)
14+
# See docs/concepts/tagging-system.md for detailed guidelines
15+
tags:
16+
plot_type:
17+
- circle-packing
18+
- hierarchy
19+
data_type:
20+
- hierarchical
21+
- numeric
22+
domain:
23+
- general
24+
- business
25+
features:
26+
- basic
27+
- nested
28+
- proportional

0 commit comments

Comments
 (0)