Skip to content

Commit 88a760a

Browse files
spec: add heatmap-adjacency specification (#5258)
## New Specification: `heatmap-adjacency` Related to #5240 --- ### specification.md # heatmap-adjacency: Network Adjacency Matrix Heatmap ## Description A matrix-based representation of a network or graph where rows and columns represent nodes and cell color indicates the presence or weight of edges between them. This visualization complements node-link diagrams by excelling at revealing clusters, structural patterns, and density in large or dense networks where node-link layouts become cluttered. Reordering nodes by cluster, degree, or community membership exposes block-diagonal structure and makes group boundaries immediately visible. ## Applications - Visualizing social network connections to detect community structure and cliques - Displaying brain connectivity matrices in neuroscience to identify functionally linked regions - Analyzing bilateral trade relationships between countries to reveal trading blocs - Showing co-occurrence patterns in text analysis to find related terms or topics ## Data - `source` (categorical) — source node identifier - `target` (categorical) — target node identifier - `weight` (float, optional) — edge weight or connection strength; defaults to 1 (binary presence) when absent - Size: 20–200 nodes (adjacency matrix will be nodes × nodes) - Example: A social network of 50 people with friendship strength scores ## Notes - Nodes should be reorderable by cluster, degree, or community assignment to expose block-diagonal structure - For undirected graphs the matrix is symmetric; implementations should fill both triangles - Color intensity maps to edge weight; absent edges should use a distinct background (e.g., white or near-white) - Optional dendrogram along axes to show hierarchical clustering of node ordering - Include a colorbar legend showing the weight scale - Axis tick labels should display node names; for large networks consider showing only group boundaries --- **Next:** Add `approved` label to the issue to merge this PR. --- :robot: *[spec-create workflow](https://github.com/MarkusNeusinger/pyplots/actions/runs/24290821552)* Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent d5074ee commit 88a760a

2 files changed

Lines changed: 58 additions & 0 deletions

File tree

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# heatmap-adjacency: Network Adjacency Matrix Heatmap
2+
3+
## Description
4+
5+
A matrix-based representation of a network or graph where rows and columns represent nodes and cell color indicates the presence or weight of edges between them. This visualization complements node-link diagrams by excelling at revealing clusters, structural patterns, and density in large or dense networks where node-link layouts become cluttered. Reordering nodes by cluster, degree, or community membership exposes block-diagonal structure and makes group boundaries immediately visible.
6+
7+
## Applications
8+
9+
- Visualizing social network connections to detect community structure and cliques
10+
- Displaying brain connectivity matrices in neuroscience to identify functionally linked regions
11+
- Analyzing bilateral trade relationships between countries to reveal trading blocs
12+
- Showing co-occurrence patterns in text analysis to find related terms or topics
13+
14+
## Data
15+
16+
- `source` (categorical) — source node identifier
17+
- `target` (categorical) — target node identifier
18+
- `weight` (float, optional) — edge weight or connection strength; defaults to 1 (binary presence) when absent
19+
- Size: 20–200 nodes (adjacency matrix will be nodes × nodes)
20+
- Example: A social network of 50 people with friendship strength scores
21+
22+
## Notes
23+
24+
- Nodes should be reorderable by cluster, degree, or community assignment to expose block-diagonal structure
25+
- For undirected graphs the matrix is symmetric; implementations should fill both triangles
26+
- Color intensity maps to edge weight; absent edges should use a distinct background (e.g., white or near-white)
27+
- Optional dendrogram along axes to show hierarchical clustering of node ordering
28+
- Include a colorbar legend showing the weight scale
29+
- Axis tick labels should display node names; for large networks consider showing only group boundaries
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Specification-level metadata for heatmap-adjacency
2+
# Auto-synced to PostgreSQL on push to main
3+
4+
spec_id: heatmap-adjacency
5+
title: Network Adjacency Matrix Heatmap
6+
7+
# Specification tracking
8+
created: "2026-04-11T20:22:41Z"
9+
updated: null
10+
issue: 5240
11+
suggested: MarkusNeusinger
12+
13+
# Classification tags (applies to all library implementations)
14+
# See docs/reference/tagging-system.md for detailed guidelines
15+
tags:
16+
plot_type:
17+
- heatmap
18+
- network
19+
data_type:
20+
- network
21+
- categorical
22+
- numeric
23+
domain:
24+
- general
25+
- science
26+
features:
27+
- color-mapped
28+
- correlation
29+
- comparison

0 commit comments

Comments
 (0)