# List of 27 Visual Diagram Types in Diagram-Design: Complete Reference

> Explore 27 visual diagram types supported by Diagram-Design. Discover this complete reference guide for creating effective diagrams.

- Repository: [Cathryn Lavery/diagram-design](https://github.com/cathrynlavery/diagram-design)
- Tags: api-reference
- Published: 2026-08-14

---

**Diagram-Design supports exactly 27 visual diagram types, each defined in its own reference document under `skills/diagram-design/references/`.**

Diagram-Design by cathrynlavery/diagram-design ships a fixed taxonomy of **27 visual diagram types** covering charting, hierarchical structures, process flows, state machines, and specialized layouts. Each type is rendered through a shared core engine with consistent styling rules and export capabilities. This guide lists every supported type with its reference file path and practical usage examples.

## The Complete List of 27 Diagram Types

The following table enumerates all visual diagram types supported by Diagram-Design, ordered by their canonical numbering in the source repository:

| # | Diagram Type | Reference File |

|---|--------------|----------------|
| 1 | Venn | [`skills/diagram-design/references/type-venn.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-venn.md) |
| 2 | Tree | [`skills/diagram-design/references/type-tree.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-tree.md) |
| 3 | Timeline | [`skills/diagram-design/references/type-timeline.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-timeline.md) |
| 4 | Swimlane | [`skills/diagram-design/references/type-swimlane.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-swimlane.md) |
| 5 | State | [`skills/diagram-design/references/type-state.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-state.md) |
| 6 | Sequence | [`skills/diagram-design/references/type-sequence.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-sequence.md) |
| 7 | Scatter | [`skills/diagram-design/references/type-scatter.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-scatter.md) |
| 8 | Radar | [`skills/diagram-design/references/type-radar.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-radar.md) |
| 9 | Quadrant | [`skills/diagram-design/references/type-quadrant.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-quadrant.md) |
| 10 | Pyramid | [`skills/diagram-design/references/type-pyramid.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-pyramid.md) |
| 11 | Process | [`skills/diagram-design/references/type-process.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-process.md) |
| 12 | Org-Chart | [`skills/diagram-design/references/type-org-chart.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-org-chart.md) |
| 13 | Nested | [`skills/diagram-design/references/type-nested.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-nested.md) |
| 14 | Medallion | [`skills/diagram-design/references/type-medallion.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-medallion.md) |
| 15 | Loop | [`skills/diagram-design/references/type-loop.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-loop.md) |
| 16 | Line | [`skills/diagram-design/references/type-line.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-line.md) |
| 17 | Layers | [`skills/diagram-design/references/type-layers.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-layers.md) |
| 18 | IT State | [`skills/diagram-design/references/type-it-state.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-it-state.md) |
| 19 | High-Level | [`skills/diagram-design/references/type-high-level.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-high-level.md) |
| 20 | Gantt | [`skills/diagram-design/references/type-gantt.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-gantt.md) |
| 21 | Flowchart | [`skills/diagram-design/references/type-flowchart.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-flowchart.md) |
| 22 | ER | [`skills/diagram-design/references/type-er.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-er.md) |
| 23 | DP Security Matrix | [`skills/diagram-design/references/type-dp-security-matrix.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-dp-security-matrix.md) |
| 24 | DP Integration | [`skills/diagram-design/references/type-dp-integration.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-dp-integration.md) |
| 25 | Data Flow | [`skills/diagram-design/references/type-data-flow.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-data-flow.md) |
| 26 | Bar | [`skills/diagram-design/references/type-bar.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-bar.md) |
| 27 | Architecture | [`skills/diagram-design/references/type-architecture.md`](https://github.com/cathrynlavery/diagram-design/blob/main/skills/diagram-design/references/type-architecture.md) |

Each reference file specifies layout rules, connector primitives, and recommended styling for its diagram type.

## Diagram Type Categories

Understanding how these 27 types group by purpose helps select the right visualization for your data.

### Classic Charting Types

- **Bar** — Categorical comparison with rectangular bars
- **Line** — Continuous data trends over time or sequences
- **Scatter** — Correlation analysis via x-y coordinate plotting
- **Radar** — Multi-variate data displayed on polar axes

### Hierarchical Structure Types

- **Tree** — Parent-child node relationships branching downward
- **Org-Chart** — Organizational reporting structures
- **Architecture** — System component hierarchies and dependencies
- **Nested** — Recursive containment with visual nesting levels

### Process and Timeline Types

- **Flowchart** — Algorithmic or business process flows
- **Gantt** — Project schedules with task dependencies and durations
- **Process** — Step-by-step procedural diagrams
- **High-Level** — Simplified executive summaries of complex workflows
- **Timeline** — Chronological event sequences
- **Swimlane** — Multi-actor process flows with responsibility lanes

### State-Based Types

- **State** — Finite state machines with transitions
- **IT State** — IT infrastructure state tracking and change management
- **DP Security Matrix** — Data protection security posture visualization
- **DP Integration** — Data protection integration touchpoints
- **Data Flow** — Information movement between system boundaries

### Specialized Layout Types

- **Venn** — Set theory overlaps with intersecting circles
- **Quadrant** — Two-axis strategic positioning grids
- **Pyramid** — Hierarchical proportion or priority stacking
- **Medallion** — Central hub with radiating satellite elements
- **Loop** — Cyclical or iterative process visualization
- **Layers** — Stack-based architectural abstractions
- **Sequence** — Time-ordered interactions between actors (UML sequence)

## Working with Diagram Types in Practice

### Import with Explicit Type Declaration

Override automatic type detection using the `--type` flag.

```bash
diagram-design import-mermaid my-diagram.mmd --type gantt

```

```bash
diagram-design import-drawio my-diagram.drawio --type architecture

```

### Export with Default Type Inference

When no type is specified, Diagram-Design infers from source content:

```bash
diagram-design export-diagram --output diagram.html

```

## Key Source Files

| File | Purpose |
|------|---------|
| `skills/diagram-design/references/*.md` | Authoritative specifications for all 27 diagram types |
| [`commands/import-mermaid.md`](https://github.com/cathrynlavery/diagram-design/blob/main/commands/import-mermaid.md) | Mermaid import CLI with `--type` option |
| [`commands/import-drawio.md`](https://github.com/cathrynlavery/diagram-design/blob/main/commands/import-drawio.md) | Draw.io import CLI with `--type` option |
| [`commands/export-diagram.md`](https://github.com/cathrynlavery/diagram-design/blob/main/commands/export-diagram.md) | Export to HTML/PNG formats |
| `assets/template-*.html` | Rendering templates (light, dark, full variants) |
| `scripts/*.py` | Validation scripts enforcing type-specific constraints |

## Summary

- **Diagram-Design supports 27 fixed visual diagram types** — no dynamic extension mechanism exists
- Each type has a dedicated reference file in `skills/diagram-design/references/` defining layout rules and styling
- Use `--type` flag with `import-mermaid` or `import-drawio` commands to override automatic detection
- Types span **classic charts, hierarchies, processes, state machines, and specialized layouts**
- Validation scripts in `scripts/*.py` enforce edge rules and structural constraints per type

## Frequently Asked Questions

### What happens if I specify an invalid diagram type?

Diagram-Design returns an error listing valid types. The CLI validates against the 27-type taxonomy defined in `skills/diagram-design/references/` and rejects unrecognized values before processing begins.

### Can I create custom diagram types beyond the 27 supported?

No. The taxonomy is fixed in the source code. Each type requires dedicated reference documentation, validation logic in `scripts/*.py`, and potentially template updates in `assets/template-*.html`. Extending beyond the 27 types requires repository modification.

### How does Diagram-Design automatically detect diagram types?

Detection analyzes source file structure — Mermaid diagram keywords (`gantt`, `flowchart`, `sequence`, etc.) or Draw.io mxGraph cell properties. When ambiguity exists or you need to force a specific rendering interpretation, use the `--type` flag.

### Which diagram types are best for technical architecture documentation?

**Architecture**, **Layers**, **Data Flow**, and **IT State** types serve infrastructure documentation. **DP Security Matrix** and **DP Integration** specialize in data protection compliance visuals. Reference files for these types include connector primitives optimized for system boundary representation.