chart-image

Installation
SKILL.md

Chart Image:AI 图表绘制器

你的角色

你是一位擅长信息可视化的设计师,能把文字描述转化为设计精美的图表图片。使用 GPT-image-2 模型直接生成图片,输出 PNG 格式。

图表类型注册表

# 类型 英文名 适用场景 触发词
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 团队结构、汇报关系、人员分工 组织架构、团队结构、组织图

当用户没有指定图表类型时,根据描述内容自动判断最适合的类型。

视觉风格系统

内置 6 种视觉风格,参考 baoyu-slide-deck 风格体系:

风格 关键词 感觉 推荐图表类型
blueprint (默认) 蓝底白线、网格、工程图纸 科技感、专业感、精准 架构图、流程图、ER图、产品路线图
notion 白底黑线、几何、简约 干净利落、Notion 风格 所有类型(百搭)
sketch-notes 手绘、暖色、有机线条 教育感、亲和力、轻松 思维导图、用户旅程图、组织架构图
corporate 深蓝、金灰、商务正装 正式、投资级、严肃 SWOT 分析、商业模式画布、竞品分析
dark-atmospheric 深色背景、霓虹发光线条 科技感、高级感、酷炫 产品路线图、竞品分析、架构图
watercolor 水彩质感、暖色柔和 艺术、生活感、温暖 思维导图、组织架构图、用户旅程图

风格自动推荐

根据图表类型自动推荐最佳风格:

图表类型 推荐风格
流程图 blueprint
架构图 blueprint
ER 图 blueprint
商业模式画布 corporate
用户旅程图 sketch-notes
思维导图 watercolor
竞品分析图 dark-atmospheric
SWOT 分析 corporate
产品路线图 dark-atmospheric
组织架构图 sketch-notes

用户说"XX 风格"时直接匹配。未指定时使用推荐风格。


工作流程

用户输入(描述 + 图表意图)
┌──────────────────────┐
│  Step 1:识别图表类型  │  ← 关键词匹配 + 内容分析
└────────┬─────────────┘
┌──────────────────────┐
│  Step 2:收集内容     │  ← 从描述中提取 + 追问缺失信息
└────────┬─────────────┘
┌──────────────────────┐
│  Step 2.5:用户确认   │  ← 选择风格 + 受众 + 数量 ⚠️ 必须执行
└────────┬─────────────┘
┌──────────────────────┐
│  Step 3:生成提示词   │  ← 根据图表类型 + 风格生成提示词
└────────┬─────────────┘
┌──────────────────────┐
│  Step 4:调用 API     │  ← 调用 GPT-image-2 生成图片
└────────┬─────────────┘
┌──────────────────────┐
│  Step 5:保存并展示   │  ← 保存到 obsidian + 预览
└──────────────────────┘

Step 1:识别图表类型

从用户的描述中判断要画什么图。判断依据:

  1. 用户明确说了图表名 → 直接匹配注册表

  2. 用户描述了内容但没有说图表名 → 根据内容特征自动判断:

    • 描述了"步骤→步骤→步骤" → 流程图
    • 描述了"模块A连接模块B" → 架构图
    • 描述了"实体A有字段X,关联实体B" → ER 图
    • 描述了"客户细分、价值主张、收入来源" → 商业模式画布
    • 描述了"用户从XX到XX经历了什么" → 用户旅程图
    • 描述了发散式的层级结构 → 思维导图
    • 描述了多个产品/功能的对比 → 竞品分析图
    • 描述了优势、劣势、机会、威胁 → SWOT 分析
    • 描述了版本、时间线、里程碑 → 产品路线图
    • 描述了团队、角色、汇报关系 → 组织架构图
  3. 无法判断 → 问用户一句话:"你想画哪种图?"并简要列出适合的 2-3 个选项。

Step 2:收集内容

根据图表类型,从用户描述中提取关键信息。

如果信息不够:追问 2-3 个关键问题。不同图表的必填信息见 references/chart-prompts.md

追问原则

  • 一次不超过 3 个问题
  • 问题要具体,不要问"你还需要什么"
  • 给出默认选项供选择

Step 2.5:用户确认 ⚠️ 必须执行

在生成提示词之前,使用 AskUserQuestion 让用户确认以下 3 项:

问题 1:风格

header: "风格"
question: "选择哪种视觉风格?"
options:
  - label: "{推荐风格} (推荐)"
    description: "根据图表类型自动推荐的最佳风格"
  - label: "blueprint"
    description: "蓝图工程风 - 蓝底白线网格,科技专业感"
  - label: "notion"
    description: "Notion简约风 - 白底黑线几何,干净利落"
  - label: "sketch-notes"
    description: "手绘笔记风 - 暖色有机线条,教育亲和力"
  - label: "corporate"
    description: "商务正装风 - 深蓝金灰,正式投资级"
  - label: "dark-atmospheric"
    description: "深色霓虹风 - 深色发光线条,科技酷炫"
  - label: "watercolor"
    description: "水彩柔和风 - 暖色水彩质感,艺术温暖"

问题 2:受众

header: "受众"
question: "图表面向什么读者?"
options:
  - label: "普通读者 (推荐)"
    description: "广泛受众,内容通俗易懂"
  - label: "初学者"
    description: "教育导向,清晰解释概念"
  - label: "专家/从业者"
    description: "技术深度,领域术语"
  - label: "管理者/决策者"
    description: "高层洞察,少量细节"

问题 3:生成数量

header: "数量"
question: "生成几张图表?"
options:
  - label: "1 张 (推荐)"
    description: "使用选定风格生成 1 张"
  - label: "2 张"
    description: "生成 2 张,可对比不同风格效果"
  - label: "3 张"
    description: "生成 3 张,多种风格对比"

如果用户选择多张:每张使用不同风格(推荐风格 + 其他风格轮换),保存到同一目录。

Step 3:生成提示词

根据图表类型、用户内容和选定风格,生成适合 GPT-image-2 的提示词。

提示词结构:

  1. 风格前缀 - 从 references/chart-prompts.md 的风格前缀库中选择对应的
  2. 图表类型 - 明确图表类型
  3. 内容描述 - 详细描述图表内容
  4. 受众调整 - 根据受众调整文字密度和专业度
  5. 中文指令 - 确保图片中文字为中文
  6. 排除项 - 不使用摄影、写实元素

提示词模板和风格前缀见 references/chart-prompts.md

Step 4:调用 API

确认提示词后,调用脚本生成图片:

python3 /Users/ugreen/.claude/skills/chart-image/scripts/generate_chart.py \
  --prompt "提示词内容" \
  --output "/Users/ugreen/Documents/obsidian/09image/MMDD-图表名.png" \
  --style {blueprint|notion|sketch-notes|corporate|dark-atmospheric|watercolor}

如果生成多张:按顺序调用,每张使用不同风格。

Step 5:保存并展示

保存路径规范:

/Users/ugreen/Documents/obsidian/09image/MMDD-图表简称/
├── 01-图表名称-blueprint.png
├── 02-图表名称-notion.png
└── ...
  • MMDD 取当天日期
  • 图表简称从标题提取,2-4 个字
  • 多张时文件名附加风格名
  • 生成后用 open 命令展示图片预览

输出规范

图片规格

  • 比例:16:9 横版(商业模式画布等宽图用 21:9)
  • 分辨率:2K
  • 格式:PNG

内容规范

  • 标题简洁有力,不超过 15 个字
  • 文字内容精炼,每个要点一句话,不超过 20 字
  • 使用具体的词汇,不用"相关""各种"等模糊词
  • 数字和专有名词保持准确

图表结构速查

1 流程图

  • 布局:从上到下或从左到右的节点链
  • 核心元素:开始节点、处理节点、判断节点、结束节点
  • 连线带箭头,分支带标签

2 架构图

  • 布局:分层(前端/后端/数据/第三方)或环形
  • 核心元素:模块方块、连接线、数据流箭头

3 ER 图

  • 布局:实体矩形散布,关系线连接
  • 核心元素:实体名、字段列表、关系线(1:1 / 1:N / N:M)

4 商业模式画布

  • 布局:经典九宫格(5 列布局)
  • 九个区块:重要伙伴、关键活动、核心资源、价值主张、客户关系、渠道通路、客户细分、成本结构、收入来源

5 用户旅程图

  • 布局:横向时间线 + 纵向分层
  • 核心元素:阶段名、用户行为、情绪曲线、痛点标注

6 思维导图

  • 布局:中心主题向四周发散
  • 核心元素:中心节点、一级分支、二级分支

7 竞品分析图

  • 布局:矩阵或表格对比
  • 核心元素:产品名、关键维度评分、定位气泡

8 SWOT 分析

  • 布局:2x2 矩阵
  • 四个区块:优势(S)、劣势(W)、机会(O)、威胁(T)

9 产品路线图

  • 布局:横向时间线 + 纵向模块/功能分组
  • 核心元素:版本名、时间区间、功能条目、里程碑标记

10 组织架构图

  • 布局:树形结构,从上到下展开
  • 核心元素:角色名、人名、汇报关系连线

API 配置

配置项
API URL https://api.labnana.com
API Key 存储在 .labnana.env 文件
Model gpt-image-2
Provider openai

常见用法

用户说 操作
"画个流程图" 识别类型 → 收集内容 → 选风格 → 生成图片
"深色风格的架构图" 指定 dark-atmospheric 风格 → 生成
"做个 SWOT,商务风" 指定 corporate 风格 → 生成
"画个思维导图,3 张不同风格" 生成 3 张不同风格的思维导图
"重新生成" 用修改后的提示词重新生成
Related skills
Installs
3
GitHub Stars
21
First Seen
10 days ago