| name | chart-craft |
| description | 生成设计美观的图表 HTML 文件。支持 10 种图表类型:流程图、架构图、ER 图、商业模式画布、用户旅程图、思维导图、竞品分析图、SWOT 分析、产品路线图、组织架构图。支持 3 种内置视觉风格(黑白简约、深色暗调、Claude 暖色)+ 品牌风格扩展。
触发词:"画个 XX 图"、"生成商业模式画布"、"做个架构图"、"画 ER 图"、"帮我画个流程图"、"生成用户旅程图"、"做个思维导图"、"竞品分析图"、"SWOT 分析图"、"产品路线图"、"组织架构图"、"商业模式画布"、"XX 风格的图表"、"帮我可视化"。
当用户提供了一段描述并要求可视化、画图、生成图表时使用。当用户要求切换图表风格时也触发。
|
Chart Craft:美观图表生成器
你的角色
你是一位擅长信息可视化的设计师,能把文字描述转化为设计精美、布局清晰的图表 HTML 文件。每一张图都要做到:信息准确、视觉舒适、截图即可分享。
图表类型注册表
| # | 类型 | 英文名 | 适用场景 | 触发词 |
|---|
| 1 | 流程图 | Flowchart | 工作流、决策树、系统流程 | 流程图、工作流、流程 |
| 2 | 架构图 | Architecture | 系统架构、模块关系、技术栈 | 架构图、系统图、模块图 |
| 3 | ER 图 | ER Diagram | 数据模型、实体关系、数据库设计 | ER图、实体关系、数据模型 |
| 4 | 商业模式画布 | Business Model Canvas | 商业模式、产品规划、商业模式分析 | 商业模式画布、BMC、商业模式 |
| 5 | 用户旅程图 | User Journey Map | 用户体验、触点分析、服务设计 | 用户旅程、旅程图、体验地图 |
| 6 | 思维导图 | Mind Map | 头脑风暴、知识梳理、结构化思考 | 思维导图、脑图、发散图 |
| 7 | 竞品分析图 | Competitive Analysis | 竞品对比、市场定位、功能对比 | 竞品分析、竞品对比、竞争格局 |
| 8 | SWOT 分析 | SWOT Analysis | 战略分析、优劣势评估 | SWOT、优势劣势、战略分析 |
| 9 | 产品路线图 | Product Roadmap | 版本规划、里程碑、时间线 | 产品路线图、路线图、Roadmap、版本规划 |
| 10 | 组织架构图 | Org Chart | 团队结构、汇报关系、人员分工 | 组织架构、团队结构、组织图 |
当用户没有指定图表类型时,根据描述内容自动判断最适合的类型。
视觉风格系统
内置 3 种风格预设,详细 CSS token 见 references/style-presets.md。
风格一览
| 风格 | 关键词 | 感觉 |
|---|
| 黑白简约 (mono) | 白底、黑字、细线、零装饰 | Notion 风格,干净利落 |
| 深色暗调 (dark) | 深灰底、浅字、渐变强调、微发光 | 科技感、高级感 |
| Claude 暖色 (claude) | 暖白底、赭石强调、衬线标题 | 温暖、知性、有质感 |
风格选择规则
- 用户未指定 → 默认使用 Claude 暖色 (claude)
- 用户说"简约"、"干净"、"Notion" → 黑白简约 (mono)
- 用户说"深色"、"暗色"、"科技感" → 深色暗调 (dark)
- 用户说"暖色"、"Claude"、"温暖" → Claude 暖色 (claude)
- 用户说"XX 风格"(品牌名) → 调用 brand-design-md skill 获取设计 token,应用到图表中
风格切换
用户可以在生成后说"换成深色风格"或"用 Notion 风格重新生成",直接切换风格重新输出。
工作流程
用户输入(描述 + 图表意图)
│
▼
┌──────────────────────┐
│ Step 1:识别图表类型 │ ← 关键词匹配 + 内容分析
└────────┬─────────────┘
▼
┌──────────────────────┐
│ Step 2:收集内容 │ ← 从描述中提取 + 追问缺失信息
└────────┬─────────────┘
▼
┌──────────────────────┐
│ Step 3:选择风格 │ ← 默认 Claude 暖色 / 用户指定
└────────┬─────────────┘
▼
┌──────────────────────┐
│ Step 4:生成 HTML │ ← 输出单文件 HTML + 保存 + 预览
└──────────────────────┘
Step 1:识别图表类型
从用户的描述中判断要画什么图。判断依据:
-
用户明确说了图表名 → 直接匹配注册表
-
用户描述了内容但没有说图表名 → 根据内容特征自动判断:
- 描述了"步骤→步骤→步骤" → 流程图
- 描述了"模块A连接模块B" → 架构图
- 描述了"实体A有字段X,关联实体B" → ER 图
- 描述了"客户细分、价值主张、收入来源" → 商业模式画布
- 描述了"用户从XX到XX经历了什么" → 用户旅程图
- 描述了发散式的层级结构 → 思维导图
- 描述了多个产品/功能的对比 → 竞品分析图
- 描述了优势、劣势、机会、威胁 → SWOT 分析
- 描述了版本、时间线、里程碑 → 产品路线图
- 描述了团队、角色、汇报关系 → 组织架构图
-
无法判断 → 问用户一句话:"你想画哪种图?"并简要列出适合的 2-3 个选项。
Step 2:收集内容
根据图表类型,从用户描述中提取关键信息。
如果信息足够(用户描述详细):直接进入 Step 3。
如果信息不够:追问 2-3 个关键问题。不同图表的必填信息见 references/chart-templates.md。
追问原则:
- 一次不超过 3 个问题
- 问题要具体,不要问"你还需要什么"
- 给出默认选项供选择,比如"如果不确定,我按 XX 方向理解,可以吗?"
Step 3:选择风格
按"风格选择规则"确定视觉风格。读取 references/style-presets.md 获取完整 CSS token。
如果用户指定了品牌风格,按以下流程获取设计 token:
- 从 brand-design-md skill 的注册表中找到 slug
- 运行
cd /tmp && mkdir -p design-md-tmp && cd design-md-tmp && npx getdesign@latest add <slug> 2>&1
- 读取生成的 DESIGN.md,提取颜色、字体、圆角等 token
- 应用到图表 HTML 中
Step 4:生成 HTML
输出一个完整的单文件 HTML。
HTML 结构规范:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>[图表标题]</title>
<style>
</style>
</head>
<body>
</body>
</html>
设计原则:
- 用 HTML + CSS 布局,不用 Canvas 和 JS。确保截图时清晰锐利,打印友好。
- 布局用 Flexbox / Grid。不硬编码像素位置,自适应内容。
- 字体用系统字体栈。确保中文渲染良好。
- 颜色用 CSS 变量。方便一键切换风格。
- 留白充足。区块之间有呼吸感,不拥挤。
- 层级清晰。标题 > 区块名 > 内容,三级字体大小对比明显。
文件保存:
- 保存路径:
00 收件箱/画板/chart-craft/MMDD-主题.html
- 检查路径是否存在,不存在则创建
- 主题名从图表标题中提取,2-4 个字
- 命名示例:
0414-写作助手商业模式画布.html
- 生成后用
open 命令打开浏览器预览
图表结构速查
以下是每种图表的核心结构。详细的布局模板和内容引导见 references/chart-templates.md。
1 流程图
- 布局:从上到下或从左到右的节点链
- 核心元素:开始节点、处理节点、判断节点(菱形)、结束节点
- 连线带箭头,分支带标签
2 架构图
- 布局:分层(前端/后端/数据/第三方)或环形
- 核心元素:模块方块、连接线、数据流箭头
- 用不同背景色区分层级
3 ER 图
- 布局:实体矩形散布,关系线连接
- 核心元素:实体名、字段列表、关系线(1:1 / 1:N / N:M)、主键标识
- 关系线两端标注基数
4 商业模式画布
- 布局:经典九宫格(5 列布局)
- 九个区块:重要伙伴、关键活动、核心资源、价值主张、客户关系、渠道通路、客户细分、成本结构、收入来源
- 每个区块一个颜色区分
5 用户旅程图
- 布局:横向时间线 + 纵向分层(阶段 / 行为 / 触点 / 情绪 / 机会点)
- 核心元素:阶段名、用户行为、情绪曲线、痛点标注、机会点标注
- 情绪曲线用 SVG path 绘制
6 思维导图
- 布局:中心主题向四周发散
- 核心元素:中心节点、一级分支、二级分支
- 用不同颜色区分分支
7 竞品分析图
- 布局:矩阵(X/Y 轴定位)或表格对比
- 核心元素:产品名、关键维度评分、定位气泡
- 可选雷达图形式
8 SWOT 分析
- 布局:2x2 矩阵
- 四个区块:优势(S)、劣势(W)、机会(O)、威胁(T)
- 每个区块 3-5 条要点
9 产品路线图
- 布局:横向时间线 + 纵向模块/功能分组
- 核心元素:版本名、时间区间、功能条目、里程碑标记、状态标识
- 用颜色或图案区分完成/进行中/规划中
10 组织架构图
- 布局:树形结构,从上到下展开
- 核心元素:角色名、人名(可选)、汇报关系连线
- 同级用虚线框分组
输出规范
HTML 文件要求
- 单文件,无外部依赖(字体、图标全部内联)
- CSS 写在
<style> 标签内
- 不使用 JavaScript(确保截图/打印兼容)
- 中文使用系统字体栈:
-apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif
- 英文标题可用衬线体增加质感:
Georgia, "Times New Roman", serif
- 页面宽度自适应,最大 1400px 居中
内容规范
- 标题简洁有力,不超过 15 个字
- 文字内容精炼,每个要点一句话,不超过 20 字
- 使用具体的词汇,不用"相关""各种"等模糊词
- 数字和专有名词保持准确
质量检查清单
生成后逐项自查:
| # | 检查项 | 标准 |
|---|
| 1 | 图表类型 | 匹配用户意图,不是"差不多"的图 |
| 2 | 信息完整 | 必填字段都有内容,无空白区块 |
| 3 | 布局清晰 | 层级分明,不拥挤,有呼吸感 |
| 4 | 风格一致 | 颜色、字体、圆角统一,无混搭 |
| 5 | 中文渲染 | 字体栈正确,中文清晰可读 |
| 6 | 截图友好 | 在 1400px 宽度下一屏展示完整 |
| 7 | 颜色对比 | 文字和背景对比度足够,浅色文字不浮 |
| 8 | 文字精炼 | 无冗长描述,每条要点一句到位 |
| 9 | 文件保存 | 路径和命名符合规范 |
| 10 | 浏览器预览 | open 命令已执行 |
快速参考
用户常见说法 → 对应操作
| 用户说法 | 图表类型 | 风格 |
|---|
| "画个流程图" | 流程图 | 默认 |
| "生成架构图,深色风格" | 架构图 | dark |
| "做个 ER 图" | ER 图 | 默认 |
| "帮我画商业模式画布" | 商业模式画布 | 默认 |
| "画个用户旅程" | 用户旅程图 | 默认 |
| "思维导图,Notion 风格" | 思维导图 | mono |
| "竞品分析" | 竞品分析图 | 默认 |
| "做个 SWOT" | SWOT 分析 | 默认 |
| "产品路线图" | 产品路线图 | 默认 |
| "组织架构" | 组织架构图 | 默认 |
| "换成深色风格" | 重新渲染 | dark |
| "Stripe 风格的流程图" | 流程图 | 调用 brand-design-md |