Mind map
A radial root with four fans. Each fan opens away from the root, and each ring is large enough for the subtrees on it.
Edit it
15 boxes, 14 edges. The audit finds no defect.
The input
The same layout in TypeScript. The input is plain data, so it can come from JSON.
import { layout } from "ireko";
const input = { "root": { "id": "idea", "label": "Big idea", "layout": "radial", "children": [ { "id": "why", "label": "Why", "layout": { "type": "radial", "sweep": 180, "startAngle": -180 }, "children": [ { "id": "why-1" }, { "id": "why-2" }, { "id": "why-3" } ] }, { "id": "how", "label": "How", "layout": { "type": "radial", "sweep": 180, "startAngle": -90 }, "children": [ { "id": "how-1" }, { "id": "how-2" }, { "id": "how-3" } ] }, { "id": "who", "label": "Who", "layout": { "type": "radial", "sweep": 180, "startAngle": 0 }, "children": [ { "id": "who-1" }, { "id": "who-2" } ] }, { "id": "when", "label": "When", "layout": { "type": "radial", "sweep": 180, "startAngle": 90 }, "children": [ { "id": "when-1" }, { "id": "when-2" } ] } ] }};
const result = layout(input);