# Mindmap

> 生成交互式思维导图，支持从文本/摘要构建层级结构，直接输出 HTML、PNG、JPG、SVG、PDF、XMind 格式。所有图片格式仅需 pillow（pip install pillow），无需任何系统级C库。当用户要求生成思维导图、脑图、可视化结构图时调用。

- Skill: `dxy-hub/mindmap` (Agent Skill, multi-file: 9 files)
- Install (CLI): `npx skillmds@latest add dxy-hub/mindmap`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dxy-hub/mindmap/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: dxy-hub (https://skillmd.com/u/dxy-hub)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/dxy-hub/mindmap

---


# Mind Map Generator — 思维导图生成器

## 触发时机

- 用户说"生成思维导图"、"画脑图"、"做一个思维导图"
- 用户总结文章/内容后说"帮我做成思维导图"
- 用户说"把这些内容可视化"、"帮我梳理结构"
- 用户说"导出为 XMind / PNG / JPG / PDF"等格式

---

## 输出格式与依赖

**所有平台（Windows / macOS / Linux）统一依赖，只需 `pip install pillow`：**

| 格式 | 说明 | 依赖 |
|------|------|------|
| `html` | **默认**。交互式网页，支持拖拽/折叠/缩放/右键编辑/8种布局切换 | 无 |
| `svg` | 矢量图，无限缩放不失真 | 无 |
| `xmind` | XMind 8 / 2020+ 格式，可继续编辑 | 无 |
| `png` | 高清位图，适合嵌入文档/PPT/分享 | pillow |
| `jpg` | JPEG 位图，体积小 | pillow |
| `pdf` | PDF 文档 | pillow |

> **不需要安装任何系统级 C 库。** 如果 Pillow 未安装，脚本会**自动执行 `pip install pillow`**。

### 首次安装（一行命令）

```bash
pip install pillow
```

---

## 推荐的多格式输出策略

用户要求生成思维导图时，**默认同时输出 HTML + PNG + XMind 三种格式**，除非用户明确指定只要某种格式：

```bash
DATA='{
  "central": "核心洞见",
  "branches": [
    {"label": "🔬 维度1", "color": "#4A90D9", "children": ["证据A", "证据B"]}
  ]
}'

# 1. HTML（交互式，浏览器查看/编辑）
python3 {baseDir}/generate_mindmap.py \
  --title "标题" --format html \
  --output ~/.openclaw/workspace/标题.html --data "$DATA"

# 2. PNG（高清图片，直接分享）
python3 {baseDir}/generate_mindmap.py \
  --title "标题" --format png --scale 2.0 \
  --output ~/.openclaw/workspace/标题.png --data "$DATA"

# 3. XMind（专业思维导图软件中编辑）
python3 {baseDir}/generate_mindmap.py \
  --title "标题" --format xmind \
  --output ~/.openclaw/workspace/标题.xmind --data "$DATA"
```

参数说明：
- `--format html/png/jpg/svg/pdf/xmind`（默认 html）
- `--output` 输出路径（可省略，默认保存到 `~/.openclaw/workspace/`）
- `--scale` PNG/JPG/PDF 的像素密度（默认 2.0，建议 1.0–3.0）
- `--quality` JPG 质量 1–100（默认 92）

---

## 认知科学基础：为什么这样做思维导图

以下原则基于四大认知理论，指导 AI 生成高质量思维导图：

### 放射性思考（Buzan）— 结构原则

Tony Buzan 提出思维导图模拟大脑神经元的放射状结构：从中心向外发散，每条分支是一个独立的联想链。

**对生成的要求：** 中心节点是唯一的焦点，所有分支从它辐射而出，不存在"并列的两个中心"。

### 双重编码理论（Paivio）— 记忆原则

Allan Paivio 发现：同时通过语言通道和视觉通道编码的信息，记忆率提升约 32%。具体词（可想象的）比抽象词记忆效果好得多。

**对生成的要求：**
1. **每个主分支必须带 emoji**（激活视觉通道）—— 如 `"🔬 技术演进"` 而非 `"技术演进"`
2. **优先使用具体词**而非抽象概括 —— 如 `"训练成本降至 6 万"` 而非 `"成本下降"`
3. **颜色即编码** —— 每个分支的颜色应与语义一致，同色系 = 同语义域

### 认知负荷与米勒定律（Miller）— 容量原则

工作记忆同时处理的信息块为 7±2 个。Beel & Langer 对 19,379 张思维导图的实证研究发现：典型思维导图平均 31 个节点，每节点 1-3 个词。

**对生成的硬约束：**
- 主分支 **3–6 个**（不超过 7）
- 每个分支的子节点 **2–5 个**
- 每个节点 **4–12 字**，叶节点不超过 15 字
- **全图总节点数 ≤ 40 个**（超过则拆分为多张图或合并子节点）
- 全图最多 **4 层**深度

### 语义网络（Quillian & Collins）— 关联原则

知识在大脑中以语义网络形式存储：概念是节点，关系是连线。**节点间的距离代表语义距离**——相关的概念应该在视觉上靠近。

**对生成的要求：** 语义相近的子节点应聚合在同一个分支下（聚类原则），而不是按原文出现顺序排列。

---

## 第一步：确定中心节点（最重要）

中心节点决定整张图的质量。它是**核心洞见**，不是话题标签。

**错误示范（话题标签）：**
- ❌ "AI 发展趋势"
- ❌ "产品发布计划"
- ❌ "Python 学习"

**正确示范（核心洞见）：**
- ✅ "AI 正从工具变为协作者"
- ✅ "产品成功 = 用户价值 × 执行速度"
- ✅ "Python 的价值在于生态而非语法"

**判断方法：**
1. 问自己"关于这个内容，最重要的一件事是什么？" 答案就是中心节点。
2. 如果中心节点换成另一个话题，现有分支还能成立 → 说明太泛，需要更精确。

---

## 第二步：设计主分支（维度而非章节）

主分支是"理解中心洞见的独立视角"，不是原文的章节目录。

### 按内容类型选择维度框架

| 内容类型 | 分支维度框架 | 推荐布局 |
|----------|-------------|----------|
| 分析/研究类 | 是什么 · 为什么 · 怎么做 · 结果如何 | ⇆ 左右均衡 |
| 问题解决类 | 根因 · 影响 · 方案 · 评估 | 🐟 鱼骨图 |
| 学习知识类 | 核心概念 · 运作机制 · 适用场景 · 常见误区 | ⇆ 左右均衡 |
| 产品/项目类 | 目标 · 策略 · 执行 · 风险 | → 树形 |
| 比较分析类 | 相同点 · 差异点 · 各自优势 · 选择建议 | ⇆ 左右均衡 |
| 叙事/报告类 | 背景 · 发现 · 影响 · 行动 | → 树形 |
| 历史/阶段/流程 | 按时间或步骤顺序排列 | ⏩ 时间线 |
| 概念分解/归类 | 整体 → 部分1 + 部分2 + ... | } 括弧图 |
| **头脑风暴/创意发散** | **自由联想，不预设框架** | **✶ 辐射 或 ⚡ 力导向** |

### 分支设计原则

**原则 1：分支之间必须相互独立**（语义网络的聚类原则）

每个分支回答关于中心节点的一个不同问题。语义相近的内容聚合在同一分支下。

**原则 2：所有分支必须共同服务于中心节点**

反问："去掉这个分支，对理解中心节点有损失吗？" 无损失 → 该分支冗余，删除。

**原则 3：分支数量 3–6 个**（米勒定律）

不以"原文有几节"为准。超过 7 个分支时必须合并。

**原则 4：同级分支的抽象层次必须一致**

❌ 错误：同级出现"技术原理"（抽象）和"GPT-4"（具体实例）
✅ 正确：同级都是维度（"技术路线"、"商业模式"、"社会影响"）

### 每个主分支必须带 emoji（双重编码）

emoji 的作用是激活视觉编码通道，使分支在记忆中形成"图像锚点"。选择规则：
- emoji 应直观反映该维度的语义核心
- 同一张图内 emoji 不重复
- 置于 label 最前面：`"🔬 技术演进"` `"💰 商业模式"` `"⚠️ 风险挑战"`

| 语义域 | 推荐 emoji |
|--------|-----------|
| 技术/科学 | 🔬 🧪 ⚙️ 🔧 💻 |
| 商业/金融 | 💰 📈 🏦 💼 🎯 |
| 人物/用户 | 👤 👥 🧑‍💻 🎓 |
| 风险/问题 | ⚠️ 🚧 ❗ 🔴 |
| 趋势/时间 | 📅 🔮 📊 🕐 |
| 成果/价值 | ✅ 🏆 💡 ⭐ |
| 流程/步骤 | 🔄 📋 🗺️ 🛤️ |
| 背景/历史 | 📖 🏛️ 🌍 🗂️ |

---

## 第三步：填充子节点（证据而非子话题）

子节点不是"这个分支下还有哪些话题"，而是"**让这个分支成立的具体依据**"。

### 优先使用具体词（双重编码）

具体的、可想象的词比抽象词记忆效果好 1.5-2 倍（Paivio 实验数据）。

| 子节点类型 | 示例 | 作用 |
|------------|------|------|
| 具体机制 | "注意力机制使模型聚焦关键词" | 解释"为什么" |
| 量化数据 | "GPT-4 训练成本超 1 亿美元" | 使声明可信 |
| 典型案例 | "Copilot 使代码效率提升 55%" | 使抽象具体 |
| 对比参照 | "vs 传统搜索：主动生成 vs 被动检索" | 揭示差异 |
| 行动指南 | "先用小数据集验证再扩规模" | 指导实践 |
| 关键限制 | "幻觉率随任务复杂度非线性上升" | 防止误用 |

### 层级深度规则

```
中心节点（1 个）
  └── 主分支（3–6 个）    ← 理解维度，带 emoji，抽象词组
        └── 子节点（2–5 个）  ← 支撑证据，具体词组或短句
              └── 叶节点（可选，1–3 个）  ← 最具体的事实/数据/步骤
```

- 全图最多 4 层，**总节点 ≤ 40 个**
- 每个主分支至少 2 个子节点（1 个说明未充分挖掘）
- 叶节点不超过 3 个（太多说明需要再拆一层）

---

## 第四步：节点文字规范

| 规则 | 正确 | 错误 |
|------|------|------|
| 使用原文关键词，不过度意译 | "联邦学习" | "一种保护数据的分布式方法" |
| 动词短语比名词堆砌更有力 | "降低推理延迟 40%" | "推理延迟优化相关内容" |
| 长度 4–12 字 | "本地训练不传原始数据" | 过长的完整句子 |
| 并列内容拆成独立节点 | 三个节点："医疗" / "教育" / "金融" | 一个节点："医疗教育金融" |
| 越深层越具体（认知负荷递减） | 叶节点写具体数字/步骤/案例 | 叶节点写抽象标签 |

---

## 第五步：质量自查（生成后必检）

生成 JSON 后，逐条检查，不合格立即修改：

**容量检查（米勒定律）：**
- [ ] 总节点数是否 ≤ 40？（超过则合并或拆分）
- [ ] 主分支是否 3–6 个？
- [ ] 每个节点是否 ≤ 12 字？

**必要性检查（认知负荷）：**
- [ ] 删去任意一个主分支，对理解中心节点的损失是否明显？（不明显 → 删除该分支）
- [ ] 每个子节点是否使其父分支更可信/更具体？（否 → 删除或替换）
- [ ] 是否存在"正确的废话"节点？（如"需要进一步研究" → 删除）

**双重编码检查：**
- [ ] 每个主分支是否带了 emoji？
- [ ] 叶节点是否用了具体的、可想象的词？（抽象标签 → 替换为具体事实）
- [ ] 颜色是否与语义一致？（同类维度同色系）

**结构检查（放射性思考）：**
- [ ] 中心节点是核心洞见还是话题标签？
- [ ] 同级分支的抽象层次是否一致？
- [ ] 是否有只含 1 个子节点的分支？（合并或补充）

---

## 第六步：构造 JSON 并执行

> **⚠️ 强制规则：每个主分支的 label 必须以 emoji 开头。**
> 格式：`"label": "🔬 技术演进"` —— emoji + 空格 + 文字。
> 这是基于双重编码理论的硬性要求，不可省略。

```json
{
  "central": "核心洞见（不超过 15 字）",
  "branches": [
    {
      "label": "🔬 维度1（emoji 必须有）",
      "color": "#4A90D9",
      "children": [
        "具体证据A（可想象的词）",
        "量化数据B",
        {
          "label": "需要展开的证据C",
          "children": ["最具体的事实1", "最具体的事实2"]
        }
      ]
    }
  ]
}
```

**颜色分配建议（按分支语义选色）：**

| 颜色 | 适用维度 | 搭配 emoji |
|------|----------|-----------|
| `#4A90D9` 蓝 | 机制/原理/方法论 | 🔬 ⚙️ 🧪 |
| `#27AE60` 绿 | 成果/价值/应用 | ✅ 💡 🏆 |
| `#E86C3A` 橙 | 问题/挑战/风险 | ⚠️ 🚧 ❗ |
| `#9B59B6` 紫 | 背景/趋势/上下文 | 📖 🔮 🌍 |
| `#F39C12` 黄 | 资源/工具/要素 | 🔧 📦 💼 |
| `#1ABC9C` 青 | 流程/步骤/路径 | 🔄 🛤️ 📋 |
| `#E74C3C` 红 | 警告/限制/禁忌 | 🔴 ⛔ 🚫 |

脚本路径：`{baseDir}/generate_mindmap.py`

---

## 完整示例

```bash
DATA='{
  "central": "技术壁垒正被成本竞争取代",
  "branches": [
    {
      "label": "🔬 技术门槛变化", "color": "#4A90D9",
      "children": [
        {"label": "训练成本下降", "children": ["GPT-3 成本 460万刀", "同能力模型降至 6 万"]},
        "开源模型追平闭源", "微调替代全量训练"
      ]
    },
    {
      "label": "💰 主流盈利路径", "color": "#27AE60",
      "children": [
        "API 按 token 计费",
        {"label": "垂直行业定制", "children": ["医疗合规要求高溢价", "法律文档审核替代人工"]},
        "订阅制 Pro 用户"
      ]
    },
    {
      "label": "⚔️ 竞争驱动力", "color": "#E86C3A",
      "children": ["价格战压缩利润空间", "算力即竞争壁垒", "数据飞轮强者愈强"]
    },
    {
      "label": "📜 监管不确定性", "color": "#9B59B6",
      "children": [
        {"label": "欧美监管分歧", "children": ["EU AI Act 强制备案", "美国行业自律为主"]},
        "中国实名制与内容审核", "合规成本影响中小玩家"
      ]
    }
  ]
}'

python3 {baseDir}/generate_mindmap.py --title "大模型商业化" --format html  --output ~/.openclaw/workspace/大模型商业化.html  --data "$DATA"
python3 {baseDir}/generate_mindmap.py --title "大模型商业化" --format png   --output ~/.openclaw/workspace/大模型商业化.png   --data "$DATA"
python3 {baseDir}/generate_mindmap.py --title "大模型商业化" --format xmind --output ~/.openclaw/workspace/大模型商业化.xmind --data "$DATA"
```

**执行成功后告知用户（必须包含完整的绝对路径，方便用户查找文件）：**
> 思维导图已生成三种格式，保存在以下位置：
> - **HTML**：`<绝对路径>/大模型商业化.html` —— 用浏览器打开，支持交互查看、编辑节点、切换 8 种布局
> - **PNG**：`<绝对路径>/大模型商业化.png` —— 高清图片，可直接嵌入文档或分享
> - **XMind**：`<绝对路径>/大模型商业化.xmind` —— 可在 XMind 软件中打开继续编辑
>
> 其中 `<绝对路径>` 替换为脚本实际输出的路径（从脚本的 stdout 中获取，格式为 `[mindmap] ✅ HTML → /完整/路径/文件名.html`）。

---

## 内置示例文件

`{baseDir}/examples/` 目录中包含可直接打开的示例：

| 文件 | 说明 |
|------|------|
| `examples/ai_trends.html` | AI 发展趋势（5 主分支，3 层嵌套） |
| `examples/product_launch.html` | 产品发布计划 |
| `examples/python_learning.html` | Python 学习路径 |

