visual-diagram-suite(通用50种专业逻辑/流程图 自然语言一键生成)

👤 Pararadise93 📦 v3.0.1 ⭐ 4.6 ⬇️ 257 下载
🎨 设计多媒体 免费

📖 技能介绍


name: visual-diagram-suite description: 统一图表生成套件。用户只需描述问题/场景/需求,无需记图表名,AI 自动按意图路由。覆盖 40+ 类专业图表,四种渲染:show_widget HTML/CSS(复杂图首选、布局自动、跨模型兼容)、show_widget SVG(简单图、含动画)、Mermaid(零依赖、技术文档首选)、Draw.io XML(UML/泳道/DFD 最佳)。典型自动路由举例(用户话 → 自动选图):「为什么出这个问题/根因在哪」→鱼骨图/5why/FTA;「A vs B 选哪个/方案对比」→SWOT/决策树/双气泡图;「紧急程度/先做哪个/优先级」→艾森豪威尔/影响力矩阵;「战略分析/怎么扩张」→SWOT/安索夫/BCG;「项目排期/要多久」→甘特图/时间线;「系统怎么设计/架构」→分层架构/C4/洋葱/六边形;「多角色协作/审批流」→泳道图;「调用关系/谁先调用谁」→时序图;「状态怎么流转」→状态机图;「对比下 X 和 Y」→双气泡图/对比表;「汇报用/PPT 用」→show_widget SVG 优先;「写文档」→Mermaid 优先。触发:画图、可视化、梳理、拆解、对比、画一下、流程、架构、排期、优先级、对比下、画个图、根因、why、汇报用、写文档、diagram、visualize、chart、show、draw。 version: v3.1.0


Visual Diagram Suite — 统一图表生成套件

📝 一句话触发速查表

不需要记图表名。说出你想干什么,自动匹配最合适的图。

你想干什么 可以这样说 自动生成
对比选择 "对比一下A和B" / "选A还是B" / "A和B哪个好" SWOT / 双气泡图 / 对比矩阵
梳理流程 "帮我梳理X的步骤" / "X的完整流程" / "从A到B的顺序" 流程图 / 泳道图 / 阶段递进
找根因 "为什么出这个问题" / "什么原因造成的" / "找根因" 鱼骨图 / 5why / 决策树
排期规划 "帮我排个期" / "这个项目要多久" / "梳理时间线" 甘特图 / 时间线
头脑风暴 "帮我整理一下思路" / "拆解这个概念" / "系统梳理" 思维导图 / 金字塔 / 5W2H
战略分析 "分析X的战略" / "X的市场定位" / "X的优先级" SWOT / BCG / 艾森豪威尔
系统设计 "设计X的架构" / "X的分层" / "模块怎么划分" 分层架构 / C4 / 洋葱架构
占比展示 "X的份额多少" / "构成比例" / "占比图" 环形图 / 饼图
数据对比 "对比下X的数据" / "X的排名" / "季度对比" 柱状图 / 进度仪表盘
转化分析 "从A到B的转化率" / "X的漏斗" / "流失分析" 漏斗图
汇报配图 "做个汇报用的" / "给老板看" / "PPT配图" SVG优先
写文档 "写文档用的" / "嵌入Markdown" / "GitHub用" Mermaid优先

提示:描述越具体,出图越精准。加上关系词(对比/流程/根因)比只说"画个X的图"效果好10倍。

路由优先级规则(BOSS钦定)

所有出图请求,HTML/CSS 模板第一顺位。 14 类模板覆盖所有高频场景——Flexbox/Grid 自动布局、零坐标计算、视觉统一。SVG/Mermaid/Draw.io 仅作兜底(模板无法匹配的特殊场景)。

出图请求 → 匹配 14 类 HTML/CSS 模板 → ✅ 直接套模板
         → 模板无法匹配            → SVG自绘 / Mermaid / Draw.io 兜底

图表质量层级 — 框架优先原则

BOSS铁律:出图不是罗列信息,是展示逻辑框架。简单卡片拼凑 = 平庸。必须有分析结构——决策链、阶段对齐、维度量化、因果推导。

框架级图表(优先选用)

这些模板天然承载分析逻辑,能展示"为什么不同"而不仅是"有什么":

模板 框架逻辑 典型场景
模板二(流程链路) 因果链、步骤推导 决策树、5why、审批路径
模板六(对比矩阵) 维度交叉定位 SWOT、BCG、风味矩阵
模板七(并行分支) 多路并行对比 工艺对比、A/B方案、多角色
模板十(泳道图) 统一阶段轴对齐 跨职能流程、工艺阶段矩阵

组合技巧(进阶)

单一模板不够时,多模板叠加以形成分析链条

决策树(模板二) → 阶段对齐矩阵(模板十改编) → 维度量化对比(模板六改编)
     ↑                    ↑                        ↑
  为什么分叉?          每个阶段差异在哪?        最终结果差多少?

这是咖啡工艺图从"平庸"升级为"框架级"的核心改造——从四张独立卡片(模板八)改为决策树+泳道矩阵+维度条的三段式分析结构。

展示级模板(仅用于陈列)

  • 模板八(卡片组图):适合信息分组展示,不适合对比分析
  • 模板九(时间线):适合里程碑罗列,无分析框架

规则:用户说"对比/分析/为什么不同"时,禁止单独使用模板八。优先从框架级模板中选,必要时组合使用。


🤖 智能意图路由器(v3.2 — 三层分析引擎)

核心理念:从"关键词匹配图表名"升级为"四维度结构分析→决策树→组合策略"。Agent 分析用户描述背后的关系结构,而非匹配表面词语。

第一层:意图结构分析

收到出图请求后,先对用户描述做四维度拆解:

维度 选项 说明
关系类型 对比 / 流程 / 因果 / 层级 / 时序 / 组合 核心关系是什么?
主体数量 二元(2) / 多元(3-8) / 大量(9+) 有几个对象参与?
复杂度 线性串联 / 分支分叉 / 网状反馈 关系链有多复杂?
对比深度 陈列级 / 流程级 / 因果级 只是罗列特征?还是分析为什么不同?

示例:「咖啡豆四种处理工艺有什么不同」→ 关系=对比+流程 / 数量=多元(4) / 复杂度=分支 / 深度=因果级 → 触发组合策略

第二层:模板选择决策树

关系类型
│
├─ 对比
│   ├─ 深度=陈列级(罗列特征)                     → 模板八(卡片组图)
│   ├─ 深度=流程级(流程对比,维度≤2)              → 模板七(并行分支)
│   ├─ 深度=流程级(含统一阶段轴)                  → 模板十(泳道对齐矩阵)
│   └─ 深度=因果级(为什么不同+量化差异)           → 组合:模板二+六+十
│
├─ 流程
│   ├─ 单流程、线性串联                             → 模板二(流程链路图)
│   ├─ 单流程、分支分叉(决策节点)                  → 模板二(决策树变体)
│   ├─ 多流程并行、含统一阶段轴                     → 模板十(泳道对齐矩阵)
│   └─ 多流程并行、无统一轴                         → 模板七(并行分支图)
│
├─ 层级(整体-部分、上层-下层)                     → 模板四(分层架构图)
│
├─ 因果(原因→结果)
│   ├─ 单链推导                                     → 模板二(流程链路 / 5why)
│   ├─ 多因素汇聚                                   → 模板一(中心辐射 / 鱼骨图)
│   └─ 网状反馈回路                                 → SVG自绘(CLD因果回路)兜底
│
├─ 时序(时间轴上的事件)                           
│   ├─ 里程碑/历史                                  → 模板九(时间线)
│   └─ 阶段递进/演化                                → 模板三(阶段递进图)
│
├─ 矩阵定位(二维四象限)                           → 模板六(对比矩阵)
│   └─ SWOT / BCG / 安索夫 / 艾森豪威尔 / 影响力-努力
│
├─ 数据可视化(数值驱动)
│   ├─ 占比/份额/构成                                → 模板十一(环形图/饼图)
│   ├─ 对比/排名(多项目数值比较)                    → 模板十二(柱状图)
│   ├─ 转化率/递减阶段                               → 模板十三(漏斗图)
│   └─ KPI指标/完成率                                → 模板十四(进度仪表盘)
│
└─ 模板无法覆盖(CLD/洋葱/六边形/DFD...)           → SVG自绘 / Mermaid / Draw.io 兜底

快速决策口诀: - 罗列特征 → 模板八(卡片) - 流程步骤 → 模板二(链路) - 四象限定位 → 模板六(矩阵) - 多层架构 → 模板四(分层) - 阶段递进 → 模板三(递进) - 并行对比(含统一轴) → 模板十(泳道)或 模板七(分支) - 因果链 → 模板二(链路) - 网状反馈 → SVG 兜底 - 占比份额 → 模板十一(环形/饼图) - 数据排名 → 模板十二(柱状图) - 转化漏斗 → 模板十三(漏斗图) - KPI指标 → 模板十四(仪表盘)

第三层:组合策略

单模板不足以表达完整分析逻辑时,多模板组合形成分析链条:

组合模式 模板序列 适用场景
决策→对比→量化 模板二(决策树入口)+ 模板十(泳道对齐)+ 模板六(维度量化) 多工艺/方案对比分析
结构→差异 模板四(分层架构)+ 模板六(维度卡) 系统对比、架构差异
归因→传导 模板一(鱼骨/因果)+ 模板二(流程链) 根因分析 + 传导路径
定位→策略 模板六(矩阵定位)+ 模板三(阶段递进) SWOT分析 + 行动路线

原则:框架级模板(二/六/七/十)优先组合。展示级模板(八/九)仅用于纯陈列场景,禁止单独用于对比/分析类需求。

模糊意图处理

当用户描述无法明确分析结构时,不要猜测——列出 2-3 个候选让用户确认,并解释每个选择的后果

「您的需求有几种理解: 1. 流程对比(展示各方案的步骤差异)— 会生成泳道对齐矩阵,按阶段逐行对比 2. 因果分析(分析为什么不同导致结果不同)— 会生成决策树+量化维度,深层归因 3. 特征罗列(简单列出各项特点)— 会生成卡片组图,但只展示不做分析 哪种更适合?」

规则:每次推荐必须附带「选A会生成什么图 → 适合什么场景 → 不适合什么场景」的解释链,让用户做知情选择而非盲猜。


概述

为复杂问题提供 结构化、可视化、专业级 的图表生成能力。v2.0 升级覆盖 40+ 类图表,按 4 大类组织:思维框架、业务架构、流程分析、逻辑推理。所有图表遵循统一视觉规范,输出具有以下特征:

  1. 高观赏性:6 主调色板 + 6 浅色 + 字号层级化 + CSS 阴影 + 规整对齐
  2. 逻辑清晰:结构化布局、层次分明、关系明确、配色分类
  3. 四种输出:按场景自动选择最优渲染管线
  4. show_widget HTML/CSS(复杂图首选)— Flexbox/Grid 自动布局、跨模型兼容、避免坐标计算错误
  5. show_widget SVG(简单图)— 内联动画、最佳观赏、用于汇报 / PPT 配图
  6. Mermaid 代码块(次选)— 零依赖、可编辑、用于技术文档 / Markdown
  7. Draw.io XML(特殊场景)— 二次编辑、UML / 泳道支持最佳

快速使用 4 步流程

1. 智能意图识别(自动) → 2. 查路由表 → 3. 选输出方式 → 4. 调用模板生成

重要:Step 1 已由「智能意图路由器」自动完成。用户无需告诉 Agent 图表名——只需描述问题/场景,Agent 自动识别并选择最合适的图表。

Step 1:场景识别(5 大类 + 数据展示)

大类 典型场景 常用图表
思维框架 头脑风暴、问题梳理、知识点整理、结论先行 思维导图、金字塔(SCQA)、5W2H、八大思维图
业务架构 战略规划、产品组合、组织分工、对比决策 SWOT、BCG、安索夫、艾森豪威尔、影响力、BSC
逻辑推理 复杂因果、决策评估、风险分析、根因挖掘 鱼骨图、多重流程、FTA、ETA、5why、Issue Tree、决策树、CLD
流程分析 业务审批、系统交互、状态流转、项目排期 标准流程、泳道/审批、活动图、状态机、时序、甘特、时间线、Git
系统设计 架构设计、UML 建模、数据建模 分层架构、洋葱、六边形、C4、DFD、用例、类图、组件、部署
数据展示 占比、份额、可视化数据 饼图

Step 2:场景路由表(40+ 类精简)

完整路由详见 references/scenario-routing.md。下表为速查(严格 4 大类组织,与 scenario-routing.md 一致):

大类 图表类型 主模板 输出方式
思维框架 思维导图 Mermaid mindmap / SVG / HTML 辐射 show_widget HTML / SVG / Mermaid
思维框架 金字塔原理(SCQA) SVG 自绘(梯形堆叠)/ HTML 链式卡片 show_widget HTML / SVG
思维框架 5W2H 七何分析法 SVG 自绘(七维卡片)/ HTML 中心辐射 show_widget HTML / SVG
思维框架 八大思维图(圆圈/气泡/双气泡/流程/多重流程/括号/桥型/树形) SVG 自绘 / Mermaid / HTML 卡片 show_widget HTML / SVG / Mermaid
业务架构 SWOT 矩阵 SVG 自绘 2×2 / HTML 对比矩阵 show_widget HTML / SVG
业务架构 波士顿矩阵 BCG SVG 自绘 2×2 气泡 / HTML 对比矩阵 show_widget HTML / SVG
业务架构 安索夫矩阵 SVG 自绘 2×2 / HTML 对比矩阵 show_widget HTML / SVG
业务架构 艾森豪威尔矩阵 SVG 自绘 2×2 / HTML 对比矩阵 show_widget HTML / SVG
业务架构 影响力-努力矩阵 SVG 自绘 2×2 / Mermaid quadrantChart / HTML 对比矩阵 show_widget HTML / SVG / Mermaid
业务架构 平衡计分卡 BSC SVG 自绘 四象限 / HTML 中心辐射 show_widget HTML / SVG
业务架构 组织架构树 Mermaid flowchart TB Mermaid / SVG
业务架构 数据血缘图 Mermaid flowchart LR Mermaid
业务架构 微服务架构拓扑 Mermaid flowchart + subgraph Mermaid
业务架构 ER 图 Mermaid erDiagram Mermaid
逻辑推理 鱼骨图(石川图) SVG 自绘 / HTML 分层 show_widget HTML / SVG
逻辑推理 多重流程图(Multi-Flow) SVG 自绘(三栏:流程/原因/结果)/ HTML 并行分支 show_widget HTML / SVG
逻辑推理 FTA 故障树 Draw.io XML Draw.io
逻辑推理 ETA 事件树 Draw.io XML Draw.io
逻辑推理 5why 五问法 Mermaid flowchart 阶梯 / HTML 流程链 show_widget HTML / Mermaid / SVG
逻辑推理 逻辑树 / Issue Tree Mermaid flowchart TB / HTML 卡片组 show_widget HTML / Mermaid / SVG
逻辑推理 决策树(含概率/收益) Mermaid flowchart 菱形 / HTML 流程链 show_widget HTML / Mermaid / SVG
逻辑推理 因果回路图 CLD / 飞轮 SVG 自绘(节点+极性+/-) show_widget SVG
数据展示 雷达图 / 蜘蛛网图 SVG 自绘(Python 极坐标计算 + rsvg-convert PNG) show_widget SVG
流程分析 标准流程图(GB/T 1526) Mermaid flowchart Mermaid
流程分析 泳道图 / 流程审批 Draw.io XML 泳道 / HTML 泳道简化版 Draw.io / show_widget HTML
流程分析 UML 活动图 Mermaid flowchart fork/join Mermaid
流程分析 状态机图(UML 状态图) Mermaid stateDiagram-v2 Mermaid
流程分析 时序图 Mermaid sequenceDiagram Mermaid
流程分析 甘特图 Mermaid gantt Mermaid
流程分析 时间线 Mermaid timeline / HTML 时间线 show_widget HTML / Mermaid
流程分析 Git 分支图 Mermaid gitGraph Mermaid
系统设计 分层架构图 Mermaid flowchart TB + classDef / HTML 分层架构 show_widget HTML / Mermaid / SVG
系统设计 洋葱架构 SVG 自绘(同心圆) show_widget SVG
系统设计 六边形架构 SVG 自绘(中心 + 端口) show_widget SVG
系统设计 DDD C4(Context/Container/Component) Mermaid C4Context C4Container C4Component Mermaid
系统设计 DFD 数据流图 Draw.io XML / HTML 数据流 Draw.io / show_widget HTML
系统设计 用例图(Use Case) Draw.io XML Draw.io
系统设计 类图(Class Diagram) Draw.io XML / Mermaid classDiagram Draw.io / Mermaid
系统设计 组件图(Component Diagram) Draw.io XML Draw.io
系统设计 部署图(Deployment Diagram) Draw.io XML Draw.io
数据展示 饼图 Mermaid pie Mermaid

Step 3:输出方式选择规则

场景 推荐方式 理由
复杂图(>8 节点 / 多层嵌套 / 长文本) show_widget HTML/CSS Flexbox/Grid 自动布局,避免坐标错位,跨模型兼容
简单图(≤8 节点)/ 汇报 / PPT 配图 / 方案展示 show_widget SVG 动画 + 高观赏性 + 主题色
技术文档 / Markdown / README Mermaid 代码块 零依赖、可编辑、GitHub 原生渲染
复杂审批流 / UML 类图 / DFD / ETA / FTA / 用例图 Draw.io XML 符号支持最佳、可二次编辑
用户无明确偏好 HTML/CSS 优先(复杂)→ SVG(简单) 跨模型稳定性最高

关键规则:当目标模型不是 GLM-5.2 时,强制使用 HTML/CSS 模板(见 references/html-chart-templates.md),不要从零写 SVG 坐标。

详见 references/output-formats.md

Step 4:调用模板生成

每个图表类型都有现成模板和最佳实践,按需加载:

  • 场景路由详情references/scenario-routing.md(40+ 类关键词清单 + 推荐理由)
  • 视觉规范references/visual-style-guide.md(配色、字号、留白、阴影、对齐)
  • HTML/CSS 模板references/html-chart-templates.md(17 类图表 HTML 骨架 + 模型适配指引)
  • CSS 变量替换references/css-variable-replacement.md(模板维护工作流:硬编码→变量,含 patch 工具模糊匹配陷阱)
  • 🎨 设计系统 v3.1.0references/design-system-v4.md(三层阴影/渐变系统/3主题/间距字号/premium工具类)
  • Mermaid 模板references/mermaid-templates.md(20+ 类 Mermaid 图表模板 + 主题)
  • SVG 自绘指南references/svg-self-draw-guide.md(16 类 SVG 图表的画法与代码模板,含雷达图)
  • Draw.io 模板references/drawio-templates.md(泳道/FTA/DFD/UML/类图/部署图/用例图/ETA 等的 XML 模板)
  • 雷达图参考脚本references/radar-chart-example.py(Python 极坐标计算 → SVG → rsvg-convert → PNG,修改数据即复用)
  • 雷达图生成脚本references/radar-chart-example.py(Python 极坐标计算 → SVG → rsvg-convert → PNG)

模型适配指引(v2.1 新增)

HTML/CSS 模式触发规则

当满足以下任一条件时,必须使用 HTML/CSS 模板(而非 SVG 自绘): - 节点数量 > 8 - 存在多层嵌套(如"图中含子图") - 文字内容较长(>6 个中文字符/节点) - 目标模型不是 GLM-5.2(强制)

视觉风格(配色/形状/阴影/圆角等)一律以所选 HTML/CSS 模板自身的 CSS 定义为准,不额外预设偏好。

不同模型的 Prompt 策略

模型 HTML 策略 注意事项
GLM-5.2 自由生成,信任其 CSS 能力 可省略模板,直接描述需求
DeepSeek V4 Pro 加载 html-chart-templates.md 对应模板骨架,只要求填充内容 不要让它从零写 CSS,提供完整骨架
MiniMax M3 强制使用模板,限制修改范围 只允许修改文字内容和颜色类名,禁止改结构

质量校验清单(输出前必检)

  • [ ] 所有 <div> 正确闭合(用计数法验证开闭标签数量一致)
  • [ ] CSS 变量引用正确(无硬编码颜色值,除 #fff/#1F2937 等基础色)
  • [ ] 文字无溢出(长文本节点检查容器宽度,必要时加 word-break: break-word
  • [ ] flex/grid 布局无坍塌(关键容器有固定宽度或 min-width
  • [ ] 配色 ≤ 3 种主色
  • [ ] 字体引用 'PingFang SC', 'Microsoft YaHei', sans-serif

美学规范要点

详见 references/visual-style-guide.md。核心要素:

配色(6 主色 + 6 浅色)

/* 主调 */
--c-primary:  #2563EB;   /* 蓝 — 主结构 / 决策 */
--c-success:  #10B981;   /* 绿 — 优势 / 正向 / 增强 */
--c-warning:  #F59E0B;   /* 橙 — 风险 / 机会 / 注意 */
--c-danger:   #EF4444;   /* 红 — 威胁 / 关键 / 负向 */
--c-violet:   #8B5CF6;   /* 紫 — 创新 / 辅助 / 抽象 */
--c-neutral:  #6B7280;   /* 灰 — 中性 / 注释 / 待定 */

/* 浅色(用于背景填充) */
--c-primary-light:  #DBEAFE;
--c-success-light:  #D1FAE5;
--c-warning-light:  #FEF3C7;
--c-danger-light:   #FEE2E2;
--c-violet-light:   #EDE9FE;
--c-neutral-light:  #F3F4F6;

每类图表选 2-3 主题色,对比度 ≥ 4.5:1。

字号层级

  • 标题:18-20px(粗体)
  • 一级节点:14px(粗体)
  • 二级节点:12px(常规)
  • 注释/标签:10px(浅灰)

留白与对齐

  • 节点间距:≥40px
  • 分层间距:≥60px
  • 节点圆角:矩形 rx=8、胶囊 rx=20
  • 节点阴影:仅核心节点使用 SVG <filter>(feGaussianBlur + feOffset),禁用 CSS box-shadow(visualizer 9 ramp 硬约束)
  • 节点最小宽度:120px(保证文字可读)

视觉层次技巧

  1. 核心节点:主题色填充 + 白字
  2. 次级节点:浅色填充 + 深色字
  3. 关系线:主流程用粗实线(2px),辅助关系用虚线(1px)
  4. 强调元素:用对比色边框或左上角小图标

用户友好原则(核心)

最重要的一条用户永远不需要记图表名。Agent 应主动承担"识别 → 选择 → 解释"全流程。

  1. 零记忆负担:用户只需描述"我想梳理/拆解/对比/找根因…",Agent 自动匹配图表
  2. 主动推荐:用户说"我想分析 X",Agent 主动给出"我建议画 XXX 图,因为…"+ 备选
  3. 模糊即询问:用户描述不清晰时,列出 2-3 个候选图表 + 一句话说明各自适用场景,让用户选
  4. 出图即解释:每次画图后附 1-2 句话"这种图最适合用于 XXX 场景,便于 XXX 沟通"
  5. 场景词优先:触发匹配优先级为「意图词(为什么/对比/流程/…)」>「图表名(鱼骨图/SWOT/…)」

最佳实践

  1. 框架优先:对比/分析类需求优先选框架级模板(流程链/矩阵/泳道/并行分支),避免卡片罗列
  2. 先问后画:复杂图表先与用户确认核心要素(节点数、关系、层级)— 避免大返工
  3. 不堆砌:单图节点 ≤15 个,超过则拆分子图或分组
  4. 配色克制:每图 ≤3 主色,避免花哨
  5. 文字精炼:节点文字 ≤10 字(中文),长文本放注释或便签
  6. 动画适度:show_widget 仅在标题/中心元素加淡入动画(≤0.5s),不滥用
  7. 可降级:Mermaid 渲染失败 → 改 SVG 重画;Draw.io 解析失败 → 改 Mermaid swimlane
  8. 场景不明时:主动列出 2-3 种图表推荐,让用户选择(不要猜)
  9. 概念图先讲结构再补细节(2026-07-05 BOSS 纠正):展示架构/体系/概念类图表时,第一稿必须让读者秒懂「几层、做什么、数据怎么流」。技术细节(文件路径、字节数、实体计数)放在表格或副文本中,不要堆进图的正文。如果用户说「逻辑不够清晰」→ 回到故事线重构:用一个比喻或一句话讲清核心关系,再补细节。

🎮 交互式引导模式

当用户说「引导我」「不知道怎么画」「帮我选」或首次使用本技能时,进入引导模式。

引导流程(3 步零学习上手)

Step 1: 问意图
「你想做什么?
  A. 对比分析(两个东西选哪个 / 优劣势对比)
  B. 流程梳理(步骤顺序 / 审批流 / 排期)
  C. 找根因(为什么出问题 / 分析原因)
  D. 架构设计(系统怎么搭 / 模块怎么分)
  E. 数据展示(占比 / 排名 / 进度)」

Step 2: 问规模和深度
「涉及几个对象?」(比如对比2个方案 / 梳理5个步骤 / 4个维度)
「需要多深?」(简单罗列特征 / 对比流程差异 / 深层归因分析)

Step 3: 推荐并确认
「我建议用【XX图】,因为...」+ 一句话解释为什么选这个
用户确认 → 直接出图
用户不满意 → 列出备选 + 各自优劣

引导规则

  • 每步只问一个问题,不一次抛多个
  • 选项始终 ≤5 个(A/B/C/D/E)
  • 给出推荐时必须解释原因("因为这个场景的核心关系是 XX,所以 XX 图最合适")
  • 用户说"随便"/"你定" → 直接按最佳匹配出图

触发词清单

优先级意图动词(为什么/对比/流程/…)> 图表名(鱼骨图/SWOT/…)

Agent 优先匹配用户的「意图描述」,图表名仅作为补注(用户已知名时直接调用)。

意图动词清单(用户高频用语)

A. 思维/拆解意图

  • 帮我梳理、梳理一下、拆解、拆解一下、整理、头脑风暴、idea 整理、思维梳理、思路、MECE、结论先行、抽象提炼、多维度、5 个方面

B. 因果/根因意图

  • 为什么、什么原因、怎么造成的、为什么出问题、找根因、归因、影响因素、互相影响、循环、飞轮、why、根因分析

C. 对比/决策意图

  • 对比、对比一下、比较、选哪个、选 A 还是 B、要不要做、优劣势、优劣、性价比、性价比如何、优先级、紧急重要、值不值得

D. 流程/排期意图

  • 流程、步骤、操作步骤、操作顺序、流程是怎样的、协作流程、跨部门、审批流、项目排期、要多久、时间表、里程碑、状态流转、生命周期、调用顺序

E. 架构/系统意图

  • 架构、怎么搭、整体设计、层级、限界上下文、依赖倒置、端口适配器、数据怎么流转、表结构、谁向谁汇报、服务器怎么部署

F. 输出格式意图

  • 汇报用、PPT 用、给老板看、给客户看、写文档、写到 Markdown、GitHub 用、嵌入文档

图表名(用户已知时直接调用)

思维框架:思维导图、mindmap、金字塔、SCQA、5W2H、圆圈图、气泡图、双气泡图、流程图、多重流程图、括号图、桥型图、树形图、SWOT

业务架构:波士顿矩阵、BCG、安索夫矩阵、艾森豪威尔、影响力矩阵、BSC、平衡计分卡、组织架构图、数据血缘图

逻辑推理:鱼骨图、石川图、FTA、故障树、ETA、事件树、5why、五问法、Issue Tree、问题树、决策树、因果回路图、CLD、飞轮图

流程分析:流程图、泳道图、活动图、状态机、状态图、时序图、调用链、甘特图、时间线、Git 分支

系统设计:分层架构、洋葱架构、六边形架构、C4、DDD、DFD、数据流图、用例图、类图、组件图、部署图、ER 图

英文:diagram、chart、flowchart、mindmap、fishbone、SWOT、pyramid、sequence、architecture、tree、cause、effect、state、use、case、class、component、deployment、hexagonal、onion、layered、microservice、impact、effort、eisenhower、ansoff、bcg、bsc、visualize、show、draw


失败回退

错误 处理
Mermaid 语法错误 改用 SVG 重画同一概念
Draw.io XML 解析失败 改用 Mermaid swimlane subgraphs
用户未指定图表类型 根据场景关键词自动推荐 2-3 种
show_widget 渲染失败 改用 Mermaid 代码块输出
节点过多(>20) 拆分为多个子图或用分组着色

输出标准与交付规范

分辨率标准(默认 2K 高清)

所有出图默认达到 2560×1440(2K) 有效分辨率,微信可直接读取显示且细节清晰。

# 标准渲染参数(Playwright — 2K)
viewport={'width': 1280, 'height': 720}, device_scale_factor=2  # 2560×1440 有效分辨率
# 等价于 device_scale_factor=1 时 viewport 2560×1440,但 1x 的 HTML 布局更易控

分辨率对照表:

场景 viewport DPI 输出尺寸 适用
标准 2K(默认) 1280×720 2x 2560×1440 等效 微信直发,细节清晰
汇报/PPT/打印 1280×720 3x 3840×2160 等效 高精度展示
长图/信息密集型 1280×720 2x 2560×N 多内容对比图
SVG 直转 rsvg 2700px 2700×N SVG 源文件

临时文件管理

出图过程中的 HTML/SVG 源文件写入 /tmp/vds-session/ 会话专用目录。 云服务器 /tmp/ 由系统定期清理(tmpreaper/tmpwatch),无需手动维护。 $HOME 下的 PNG 交付文件在会话结束后即被 MEDIA: 发送,服务器上不长期留存。

清理规则: - 出图完成后,/tmp/vds-session/ 目录内的 HTML/SVG 源文件已打包进 zip,可随 HTTP server 结束一并清理 - PNG 交付文件写入 $HOME/,MEDIA 发送后即完成使命,系统定期清理或下一轮出图覆盖 - 不会在服务器上持续堆积大文件

双文件交付(每次出图必须同时交付两种格式)

每次出图输出的交付物:
  1. MEDIA:/path/to/chart.png              ← 高清PNG,微信直接显示(≥2K, 2560×1440)
  2. MEDIA:/path/to/chart-sources.zip      ← 本轮源文件打包(.html 或 .svg),可二次编辑

源文件打包规则: - 仅打包本轮对话生成的源文件,不碰其他会话的历史文件 - 源文件格式 = 实际出图使用的格式:HTML/CSS 模板出图 → 打包 .html;SVG 自绘出图 → 打包 .svg - 每次出图前创建专用会话目录(如 /tmp/vds-<主题>/),所有源文件写入该目录 - 文件名:chart-sources-<主题>.zip(不硬编码 svg,如实反映源格式) - 使用 Python zipfile(比系统 zip 更可靠)

交付流程(标准四步):

# Step 0: 创建会话专用目录
mkdir -p /tmp/vds-<主题>/

# Step 1: 启动 HTTP server,服务该目录
cd /tmp/vds-<主题>/ && python3 -m http.server 8888 --bind 127.0.0.1 &

# Step 2: Playwright 2K 渲染(1280×720 × 2x DPI = 2560×1440)
~/your-agent/skills/visual-diagram-suite/.venv/bin/python << 'PYEOF'
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
    browser = p.chromium.launch(headless=True, args=['--no-sandbox'])
    page = browser.new_page(viewport={'width': 1280, 'height': 720}, device_scale_factor=2)
    page.goto('http://127.0.0.1:8888/<chart>.html', wait_until='networkidle')
    page.screenshot(path='/home/agentuser/<chart>.png', full_page=True)
    browser.close()
PYEOF

# Step 3: 只打包本轮会话的文件
cd /tmp/vds-<主题>/ && python3 -c "
import zipfile, os
with zipfile.ZipFile('/home/agentuser/chart-sources.zip', 'w', zipfile.ZIP_DEFLATED) as zf:
    for f in os.listdir('.'):
        if f.endswith(('.svg', '.html')):
            zf.write(f)
" && kill %1

# Step 4: 双交付
# MEDIA:/home/agentuser/<chart>.png
# MEDIA:/home/agentuser/chart-sources.zip

输出示例

调用 Skill 后典型输出结构:

## [图表标题]

[图表 PNG — 2560×N 高清图]

**说明**:
- 图表类型:XXX
- 表达关系:XXX
- 关键洞察:XXX(1-2 句话)
- SVG 源文件已打包:chart-sources-XXX.zip

输出格式速查

用户意图 主交付 附加交付 渲染方式
画图/出图(默认) PNG 2K sources.zip Playwright HTTP full_page
汇报用/PPT PNG 4K (3x) sources.zip Playwright HTTP 3x DPI
写文档 Mermaid 代码块 PNG 2K(备选) Mermaid → 嵌入文档
需要二次编辑 PNG 2K sources.zip(重点) Playwright + rsvg

参考资料(按需加载)

  • 场景路由详情:references/scenario-routing.md(40+ 类关键词 + 触发示例 + 推荐理由)
  • 视觉规范:references/visual-style-guide.md(配色变量、字号、留白、阴影、动画)
  • HTML/CSS 模板references/html-chart-templates.md(17 类图表 HTML 骨架 + 模型适配指引)
  • CSS 变量替换references/css-variable-replacement.md(模板维护工作流:硬编码→变量,含 patch 工具模糊匹配陷阱)
  • 🎨 设计系统 v3.1.0references/design-system-v4.md(三层阴影/渐变系统/3主题/间距字号/premium工具类)
  • Mermaid 模板:references/mermaid-templates.md(20+ 类 Mermaid 代码模板 + 主题变量)
  • SVG 自绘指南:references/svg-self-draw-guide.md(15+ 类 SVG 图表画法 + 完整代码示例)
  • Draw.io 模板:references/drawio-templates.md(泳道/FTA/DFD/UML/类图/部署图/用例图/ETA/BSC 的 XML 模板)
  • 输出格式选择:references/output-formats.md(四种方式对比 + 性能/兼容性/可编辑性)
  • 示例画廊references/examples-gallery.md(每个模板 2-3 个完整 HTML 示例,可直接复制粘贴)
  • 一键安装scripts/setup.sh(自动检测→镜像→安装→验证渲染管线)
  • 渲染自愈scripts/render_with_retry.py(三阶降级:Playwright→rsvg→Mermaid)
  • 参数校验scripts/validate_params.py(节点数/颜色检查 + 超出自动建议)

HTML → PNG 渲染管线

⚠️ 2026-07-04 雷区复盘:snap chromium 的 AppArmor 沙箱在 file:// 协议下禁用 CSS background——所有背景色不渲染,导致 99.7% 白屏。必须走 HTTP server + Playwright full_page=True 自动适配高度。

标准渲染流程(必须逐步执行)

# Step 1: 创建会话专用目录 + 启动 HTTP server
mkdir -p /tmp/vds-session/ && cd /tmp/vds-session/ && python3 -m http.server 8888 --bind 127.0.0.1 &

# Step 2: Playwright 2K 标准渲染(1280×720 × 2x DPI = 2560px 有效宽度)
~/your-agent/skills/visual-diagram-suite/.venv/bin/python << 'PYEOF'
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
    browser = p.chromium.launch(headless=True, args=['--no-sandbox'])
    page = browser.new_page(viewport={'width': 1280, 'height': 720}, device_scale_factor=2)
    page.goto('http://127.0.0.1:8888/<your-file>.html', wait_until='networkidle')
    page.screenshot(path='/home/agentuser/<output>.png', full_page=True)
    browser.close()
PYEOF

# Step 3: 只打包本轮生成的文件 + 停掉 HTTP server + 双交付
cd /tmp/vds-session/ && python3 -c "
import zipfile, os
with zipfile.ZipFile('/home/agentuser/chart-sources.zip', 'w', zipfile.ZIP_DEFLATED) as zf:
    for f in os.listdir('.'):
        if f.endswith(('.svg', '.html')):
            zf.write(f)
" && kill %1
# MEDIA:/home/agentuser/<output>.png
# MEDIA:/home/agentuser/chart-sources.zip

Playwright Chromium 安装

export PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright/
.venv/bin/playwright install chromium

降级方案(Playwright 不可用时)

# rsvg-convert:SVG 直转 PNG(零依赖,秒级)
rsvg-convert -w 2700 -b white input.svg -o output.png

渲染管线陷阱(2026-07-04 实战踩坑)

陷阱 症状 修复
file:// 协议 CSS background 不渲染 → 99.7% 白屏 必须走 HTTP server
--window-size 过高 内容只占 35%,其余空白 Playwright full_page=True
snap 沙箱路径 截图写到 snap 私有目录 输出到 $HOME/

渲染管线选择

源格式 首选方案 备选方案 备注
SVG rsvg-convert -w 2700 -b white in.svg -o out.png Playwright + HTTP server rsvg 零依赖、秒级出图、稳定可靠
HTML Playwright HTTP server + full_page=True rsvg-convert(SVG 转换后) HTML 必须浏览器渲染;SVG 直接用 rsvg 更快
图表已含 SVG rsvg-convert 优先 实测 rsvg 2700px宽 零失败

已弃用:chromium --screenshot 方案

⚠️ 已弃用。 以下仅作为历史遗留记录保留。现统一使用 Playwright HTTP server 管线。 弃用原因:snap AppArmor 禁用 file:// CSS background + --window-size 无法自适应高度。

🔥 避坑手册与常见问题

集中列出新手最容易踩的坑和解决方案,避免散落各处反复查找。

图表选择类

症状 解法
用卡片图做对比分析 生成一堆独立卡片,看不出差异 对比/分析必须用框架级模板(流程链/矩阵/泳道),卡片只用于纯展示
选了不适合的图表类型 出的图表达不了你想说的逻辑 选之前看「智能意图路由器」的决策树,它会告诉你每种图适合什么场景
节点太多(>15个) 图挤成一团、文字重叠 拆分多个子图或用分组着色。说"这个图太大了,帮我拆成2张"
架构/概念图堆满技术细节 用户看不懂结构,反馈「逻辑不够清晰」 先讲「几层、做什么、数据怎么流」。文件路径/字节数/计数放表格或副文本。用比喻或一句话讲清核心关系

输入与参数类

症状 解法
描述太模糊 出的图不是你想要的类型 加上关系词:说清楚是"对比X和Y"还是"梳理X的流程"还是"找X的根因"
模板参数填错格式 颜色错乱或布局坍塌 模板中的--val填0-100数字,--pct填百分比整数,颜色用CSS变量名
忘记设viewport宽度 HTML内容被截断或挤到一侧 始终用900px初始宽,full_page=True自动适应高度

渲染与输出类

症状 解法
出图后白屏/大片空白 图表内容看不清或全白 见下方「渲染异常自救」——换HTTP+Playwright重试
file://渲染CSS不生效 所有背景色消失→99.7%白屏 snap chromium必须走HTTP server中转,不能用file://
视口太高内容悬空 图上下都有大量空白 用Playwright的full_page=True替代手动--window-size
截图写到snap私有目录 ls找不到生成的PNG 输出到$HOME/而非/tmp/,或用Playwright(路径可控)

渲染异常自救(按序尝试)

1. Playwright HTTP渲染失败?
   → 等2秒自动重试(最多3次)
   → 仍失败:切 rsvg-convert(仅SVG源可用)
   → 仍失败:我给你一段可编辑的 Mermaid 代码,你粘贴到 GitHub/Notion 就能看

2. 出图后白屏自检
   → 自动检测白屏率 >95% → 重新渲染
   → 自动检测内容占比 <30% → 调整视口重渲
   → 自动检测字号过小 → 缩放重渲

3. 临时降级:直接让我输出 Mermaid 代码块
   → 告诉它「改用 Mermaid 画」

小葱技能7w4.net持续更新中。

不适合的场景

以下场景不建议使用本套件,或需额外注意:

场景 原因 替代方案
超大规模图(>15节点) 节点拥挤、文字重叠 拆分为多张子图,或改用专业绘图工具
高精度数据可视化 HTML/CSS图表不适合精确数据定位 用 Python matplotlib / ECharts
非中文环境 字体回退到系统默认,效果打折扣 替换CSS中的'PingFang SC'为你的系统字体
交互式图表 本套件输出静态PNG 用D3.js / Plotly / ECharts
非技术用户 需要安装Playwright+Chromium scripts/setup.sh一键安装,或改用Mermaid降级
非常规图表类型 不在40+类覆盖范围内 描述需求,AI会尝试SVG自绘兜底

异常处理降级策略

每个渲染失败都有自动降级路径,不会卡住或白屏:

用户请求出图
    │
    ├─ Playwright HTTP渲染
    │   ├─ 成功 → 出图后白屏自检(白屏率>95%→重渲,≤3次)
    │   └─ 失败 ↓
    │
    ├─ 自动重试(延迟2s,最多3次)
    │   ├─ 成功 → 白屏自检
    │   └─ 3次皆败 ↓
    │
    ├─ rsvg-convert 降级(仅SVG源可用)
    │   ├─ 成功 → 交付PNG
    │   └─ 失败/不可用 ↓
    │
    └─ Mermaid 兜底
        → 用户收到可编辑的 Mermaid 代码块
        → 可粘贴到 GitHub/Notion 原生渲染

输入异常处理: - 收到模糊请求 → 列出 2-3 个候选图表 + 各自适用场景 + 选A会怎样/选B会怎样 - 节点数超过模板上限 → 提示"该模板最多X个节点,你给了Y个,建议拆分或换模板Z" - 参数值超出范围 → 截断到合法值 + 提示"已自动调整X从Y到Z"

版本与维护

  • v3.1.0(2026-07-05):方向一+方向二同步升级。新增 design-system-v4.md(三层阴影/渐变系统/3套主题Corporate+DarkPro/间距字号系统/premium工具类)。14模板全线CSS升级(阴影/渐变/留白/字体+50%)。新增3模板:模板十五故事板/模板十六仪表盘/模板十七对比仪表。模板总数14→17。design-system-v4.md为独立设计系统文件供所有模板引用。
  • v3.8(2026-07-04 三阶段优化升级):P1 文档——新增一句话触发速查表/避坑手册/不适合场景/异常降级策略/模糊意图后果解释/交互式引导模式。P2 文件——新增 examples-gallery.md 示例画廊 / scripts/setup.sh 一键安装脚本 / 触发表格重构。P3 脚本——新增 render_with_retry.py 渲染自愈重试 / validate_params.py 模板参数预校验。目标 v4.5→v4.8。
  • v3.6(2026-07-04):Playwright Chromium 镜像安装方案——新增 PLAYWRIGHT_DOWNLOAD_HOST=npmmirror.com 环境变量加速安装,直连 cdn.playwright.dev 超时问题彻底解决。Playwright 渲染管线 E2E 验证通过。
  • v3.5(2026-07-03):渲染管线实战加固——新增 SVG→PNG 首选方案 rsvg-convert(零依赖秒级);Chromium snap 截图路径陷阱 + 正确写法;雷达图参考脚本 references/radar-chart-example.py(Python 计算 → SVG → PNG,改数据即复用)。
  • v3.4(2026-07-02):代码审查修复——移除"需要渐变"等视觉预设偏好,视觉风格以模板CSS为准;双横线分隔符修复;版本标题统一。
  • v3.3(2026-07-02):html-chart-templates 扩展至 14 类模板(新增模板11-14:环形图/饼图、柱状图、漏斗图、进度仪表盘)。所有新模板文字定位为容器居中或固定位置,不随数据变化偏移。路由决策树新增「数据可视化」分支。
  • v3.2(2026-07-02):智能意图路由器升级为三层分析引擎(四维度结构分析→决策树→组合策略),替换旧版关键词匹配映射表。新增组合策略(4种模式),框架级 vs 展示级模板明确分工。
  • v3.1(2026-07-02):新增「图表质量层级」段——框架级 vs 展示级模板分类。BOSS铁律:对比/分析类需求必须走框架级模板(流程链/矩阵/泳道/并行分支),禁止纯卡片罗列。最佳实践新增「框架优先」原则。记忆与skill彻底脱钩——视觉偏好全部由模板规范定义,不在MEMORY.md中冗余存储。
  • v3.0(2026-07-02):BOSS钦定 HTML/CSS 模板第一顺位路由规则。验证 Playwright + Chromium headless 渲染管线(HTTP server 中转方案)。8 文件 5,105 行安装完成。
  • v2.1(2026-07-02):新增 HTML/CSS 渲染管线,解决非 GLM-5.2 模型(DeepSeek V4 Pro / MiniMax M3)出图质量差的问题。新增 references/html-chart-templates.md(10 类高频图表 HTML 骨架模板)+ 模型适配指引段 + 路由表双模式标注。核心改进:复杂图从 SVG 自绘(坐标计算易错)改为 HTML/CSS(Flexbox/Grid 自动布局),跨模型兼容性提升 150%+
  • v2.0(2026-07-02):升级覆盖 40+ 类图表,从 19 类扩展至 4 大类(思维框架 / 业务架构 / 流程分析 / 逻辑推理)。新增:金字塔原理、5W2H、八大思维图(圆圈/气泡/双气泡/流程/多重流程/括号/桥型/树形)、艾森豪威尔矩阵、安索夫矩阵、影响力-努力矩阵、平衡计分卡 BSC、组织架构树、数据血缘图、状态机图、ETA 事件树、Issue Tree、用例图、类图、组件图、部署图、洋葱架构、六边形架构、微服务拓扑、ER 图、甘特图、Git 分支图、饼图、时间线
  • v1.0(2026-07-02)首版发布:覆盖 19 类图表、统一渲染管线、美学规范
  • 由 wb龙虾 整理并维护

🤖 AI 评测

这是一个质量优秀的图表生成工具,最大的优点是“会猜需求”——你说“画个对比图”它就能自动匹配SWOT或矩阵,不需要你懂图表专业知识。模板设计精美(17种模板+3套主题),输出效果专业。缺点是文档内容偏多,入门需要花时间理解路由逻辑,安装依赖略繁琐。适合经常需要做图表、有一定AI使用经验的用户。

📊 多维度评分

适应性4.7
规范性4.6
有效性4.7
可靠性4.3
可信度5

📁 包含文件 (18 个)

📄 README.md 2.9 KB
📄 SKILL.md 44.5 KB
📄 radar.svg 4.5 KB
📄 references/css-variable-replacement.md 3.4 KB
📄 references/design-system-v4.md 20.8 KB
📄 references/drawio-templates.md 55 KB
📄 references/examples-gallery.md 8.1 KB
📄 references/html-chart-templates.md 80.9 KB
📄 references/mermaid-templates.md 20.6 KB
📄 references/output-formats.md 5.1 KB
📄 references/radar-chart-example.py 5.3 KB
📄 references/rendering-pipeline-troubleshooting.md 3.1 KB
📄 references/scenario-routing.md 24.4 KB
📄 references/svg-self-draw-guide.md 55.7 KB
📄 references/visual-style-guide.md 6.9 KB
📄 scripts/render_with_retry.py 5.6 KB
📄 scripts/setup.sh 4.8 KB
📄 scripts/validate_params.py 3.4 KB