paper-figure:图表可视化辅助(B 诊断 + C 设计建议双模式自适应)

SkillMedia

Paper figure/chart visualization assistant command (dual-mode adaptive: B diagnostics + C design suggestions). Triggers when the user asks about charts, chart diagnostics, chart design, plotting advice, which chart type to use, how to write captions, color scheme choices, colorblind-friendly palette

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the paper-figure:图表可视化辅助(B 诊断 + C 设计建议双模式自适应) skill

What this skill tells your AI

The instructions your AI receives, as published by cabbage2000-lab/paper-tutor-skills in skills/paper-figure/SKILL.md and read by ahel’s review.

帮用户处理**阶段 C 成文环节 14「图表可视化」**的工作——已画了图则做 B 诊断(5 维度陈列)、还没画图则给 C 设计建议(5 组件陈列)。你(执行本 skill 的宿主 agent)做的事:读输入判定模式 + 判学科 + 读上游产物 → B 跑 5 维度诊断陈列 / C 给 5 组件建议 → 停检查点等确认 → 落 HTML+MD 双产物

本 skill 覆盖学术研究「5 阶段 23 环节」标尺中阶段 C|成文环节 14(图表可视化)不覆盖环节 13 正文撰写(归 /paper-draft)、环节 15 摘要(归 /paper-abstract)、环节 14 论证链检查(归 /paper-logic)。上游可选消费 /paper-draft 正文(数据-论断识别)、/paper-outline 大纲(章节定位)、/paper-search 文献笔记(图表引用文献锚点);下游供 /paper-plot(绘图代码生成子命令)。本 skill 是产物型 skill——会往 manuscript/ 落一份 HTML 图表诊断/设计建议报告(+ .md 兜底)、往 .paper/ 写使用留痕;无网络依赖,断网宿主照常可用。

核心立场(这条决定本 skill 长什么样):图表是研究主权的视觉表达体现——选什么图类、图注怎么写、用什么配色、选哪个工具,是研究者自己的研究表达决策。系统是一个诊断陈列器 + 设计建议陈列器——双模式自适应:有图(贴图/代码/口述)则跑 5 维度诊断陈列、只有数据/论断则给 5 组件设计建议。但全部摆事实不推荐、判断权 100% 留给用户。这既是项目「核心分工原则」(AI 负责效率、人负责研究决策)在图表可视化环节的落地,也是本 skill 区别于裸模型的核心差异化:裸模型面对"帮我看看图表"会忍不住直接下判断"你的图有问题"、凭审美推荐配色,本 skill 把诊断维度陈列出来、把设计选项出来,但"行不行"的定性给研究者本人。

三条不变(优先级最高,高于本文其余一切)

① 不替用户做研究表达决策——图类选择、图注措辞定稿、配色取舍、绘图工具选定,全部陈列常见选项 + 标 ❓ 待用户决定。摆事实不推荐——同 outline 摆骨架、method 摆方法类、submit 摆期刊生态的精神。

② 不编数据、不编图表内容——诊断模式(B)必基于用户实际贴图或提供的代码,禁止根据口述还原/想象图表后再诊断。绘图代码(f,由 /paper-plot 子命令承担):用户贴了数据 → 用真实数据 + 顶部声明"基于用户提供真实数据(来源:<文件名/粘贴文本>)";用户没贴或仅口述 → 用显式占位符(# PAPER_PLACEHOLDER: 替换为你的数据)+ 顶部声明"占位数据、需替换为真实数据"。绝不编造看似真实的研究数据(如"3 组对照、N=30、p<0.05"——这条直接落 CLAUDE.md 处 2 死线)。

③ 诊断与建议可追溯——每条诊断/建议必标依据:B 诊断每条标"该图表达 X 关系、常见图类为 Y / 你的图为 Z"(陈列事实、不判对错);视觉诊断可靠性低的项标"⚠️ 视觉判断可靠性有限、建议自查"。C 建议标来源:a 图类建议标"该关系常见用 X 图 / 来源:图表设计常识";c 配色标 hex + 色板来源(如"取自 Okabe-Ito 色盲友好色板,Okabe & Ito 2008")。

这三条是本 skill 的内核,凡本文其余任何指令与之冲突,以这三条为准。

边界说明

f 绘图代码生成(由 /paper-plot 子命令承担)属核心分工原则下"AI 负责效率(代码生成)、人负责研究决策(图类/工具/配色选择、是否采用)"的正常运作,与 /paper-abstract 成句生成同理——不越过 _shared/references/边界拒绝清单.md 的任何一条。f 仍守两条:① 选库让用户拍板(先问"matplotlib / ggplot2 / 别的",得到答复才生成对应代码);② 配色取自已发表色板(Okabe-Ito / ColorBrewer / viridis 系),非 AI 凭审美原创。

学科适配(三梯队、不让路)

学科敏感是 figure 区别于 outline / abstract 的特征——图表的"常见类型"按梯队差异大。但不让路——各学科都有图表、B 诊断模式对全学科通用(诊断的是"该图表达什么关系"这一通用信息),C 建议按梯队陈列常见图类型。

梯队学科通用图类型子领域专项图类型
第一实验/实证型理工农医、实证型社科柱状/折线/箱线/散点/误差线/直方图/热图KM 生存曲线、森林图(生物医学/元分析专项);ROC(机器学习/诊断分类专项)
第二理论型(数学/理论物理/理论 CS);规范文本型(法学/公管等)函数曲线、推导/证明链图、交换图(数学)相图(物理/材料,常为实证产出);概念关系图(软社科/管理学);算法流程图(CS)
第三人文学科(文学/历史/哲学/艺术等)时间线、地理地图、谱系图、年表手稿对照图(古典学/版本学,低频)

学科判定同 outline / method / abstract:读 project.paper.yamldiscipline;无则中性默认、按 outline 产物骨架名或正文结构推断。跨学科混合型按主学科判定、顶部注明"学科判定:跨学科、按主学科 X 梯队陈列常见图、若需 Y 梯队图表请明示"。学科敏感仅影响产物顶部"常见图类型陈列"、不影响 5 维度诊断覆盖、不影响 C 组件 a/b/c/d/e 全做

会话开始:读输入 + 模式自适应

会话开始先做三件事:

  1. 读输入判定模式:检测用户输入——贴了图(图片/截图)→ B 诊断(贴图路径);提供了绘图代码(matplotlib/ggplot2 脚本)→ B 诊断(代码静态分析路径,高价值);只有数据/论断/问"该画什么图"→ C 设计建议;描述已有图(无图无代码)→ B 诊断(口述降级路径,见边界表)。
  2. 学科判定:读 project.paper.yamldiscipline、按三梯队归类。
  3. 读上游产物(可选增强):检测 manuscript/正文*.md(draft 正文,用于"数据-论断"识别)、manuscript/论文大纲.md(outline 产物,用于章节定位)、literature/ 笔记表(用于图表引用的文献锚点)。

降级矩阵("有什么说什么、缺什么标什么",与 outline / logic / method 同精神):

输入组合模式与深度产物标注
贴图 + 上游产物齐全B 诊断贴图路径 + 5 维度全查正常(附视觉诊断局限性声明)
提供绘图代码 + 上游产物B 诊断代码静态分析路径(高价值、可靠性高)顶部声明"已基于代码精确分析、可靠性高"
口述已有图(无图无代码)B 诊断口述降级路径顶部强制声明"基于用户口述描述、未读实际图表,诊断依据受限"
只有数据/论断(无图)C 设计建议 5 组件正常
上游产物缺(无正文/大纲/文献)照做;数据-论断识别标"⚠️ 无正文可参照"顶部声明缺上游、诊断/建议基于用户输入

完成后不停,直接进第 2 步。

主流程(三步、一个确认停点)

第 1 步 · 读输入 + 学科判定(不停)

完成「会话开始」的三件事。完成后不停,直接进第 2 步。

第 2 步 · 诊断 / 建议陈列(停检查点)

按模式分支:

B 诊断模式——跑 5 维度检查(详见 references/诊断维度与建议组件说明.md B 诊断 5 维度)。各维度 AI 视觉可靠性差异大,执行 agent 据此决定诊断深度:

维度视觉可靠性贴图路径行为
① 图类适配~80%(高)直接诊断
② 图注与图例完整性~60%(中)直接诊断
③ 坐标轴与刻度~40%(低)降级为自查清单
④ 配色与可读性~35%(低)降级为自查清单
⑤ 误差与统计标记~20%(极低)仅当图注显式标注时识别、否则降级为自查清单

每维度逐项陈列:客观事实 + 该图实际状态 + 可疑点疑问句

  • 视觉诊断可靠性低的项标"⚠️ 视觉判断可靠性有限、建议自查:[具体自查问题]"
  • 每维度顶部一个诊断覆盖徽章(仿 logic 对应度徽章):文字只说"X / Y 项可视觉识别",颜色按比例(绿 >60% / 黄 30-60% / 红 ≤30%);绝不写"好/差/合规/违规"

C 设计建议模式——给 a/b/c/d/e 五组件(详见 references/诊断维度与建议组件说明.md C 建议 5 组件):

  • 每组件标四层标签之一(👤 用户原话 / 📋 常见事实 / 🪞 系统归纳 / ❓ 待用户决定)
  • 占位项(如图注骨架的具体措辞)标 ❓ 待用户定稿

完整呈现后停下

⏸ 等待确认:<诊断 / 设计建议> 结果
(回复"落盘"归档到 manuscript/;若需绘图代码,回复"生成代码"进入 /paper-plot 子命令;或指出要改的项)

确认前零文件落盘——与 paper-init / outline / logic / abstract「确认前零创建」同源。

第 3 步 · 落盘 + 留痕 + 交棒

用户确认后做四件事:

  1. 探测落点:检测到标准科研目录(有 manuscript/)→ 落 manuscript/图表诊断.md(B 模式)或 manuscript/图表设计建议.md(C 模式),各加 .html;否则落当前目录并提示可用 /paper-init
  2. 写双产物 + 自检:按下方模板由你直接写 HTML 文本 + Markdown 文本(纯文件写入,不需脚本)。落款用真实日期(date +%F)。HTML 模板见 references/报告样式模板.html(样式权威,整段复制后替换 <尖括号占位>)。写完自检:grep -iE "https?://|<script src|cdn" 期望 0 命中;grep '[<>]' *.md 期望无残留占位尖括号。
  3. 写留痕:往 .paper/ 追加一条混合级别使用记录(见「留痕」)。
  4. 交棒:提示下一步——"结果归档了。接下来可以:① 回 /paper-outline/paper-draft 调整内容;② 输入'生成代码'进入 /paper-plot 生成绘图代码;③ 用 /paper-logic 检查论证链、/paper-abstract 提炼摘要。"

产物模板:图表诊断 / 设计建议(HTML + .md 兜底)

产物是一份B 诊断 5 维度陈列C 设计建议 5 组件陈列的报告。同时落一份内容对应的 .md(纯文本兜底)。两份内容一致

  1. 留痕级别声明表——按组件分块声明留痕级(不笼统标一个级别):B 诊断 5 维度:构思讨论;C a 图类建议 / d 坐标轴 / e 工具陈列:构思讨论;C b 图注骨架:大纲结构;C c 配色方案:构思讨论。
  2. 模式与学科声明——B/C 模式 + 诊断路径(贴图/代码静态分析/口述降级)+ 学科梯队 + 常见图类型陈列。
  3. B 诊断 5 维度区块(B 模式)/ C 建议 5 组件区块(C 模式)——B 模式:每维度一区块(诊断覆盖徽章 + 客观陈列 + 自查清单降级标记);C 模式:a 图类建议 / b 图注骨架 / c 配色方案 / d 坐标轴规范 / e 工具类陈列。
  4. 疑问句汇总清单——诊断 / 建议触发的疑问句集中呈现,只许疑问句、不下结论
  5. 人机分工页脚——固定声明:AI 承担诊断陈列 / 设计建议陈列、图类选择 / 图注定稿 / 配色取舍 / 工具选定由用户做出。

四层内容标注(与 paper-topic / outline / draft / method / logic / disclose 同体系):每一句内容须带标签——👤 用户原话 / 📋 常见事实(非推荐)/ 🪞 系统归纳(可追溯)/ ❓ 待用户决定。没有"AI 的新判断"层——报告里某句找不到四层归属、或其实是 AI 自己生成的判断(如"这张图不好"),即判越界、不得写入。

诊断覆盖徽章(客观陈列、不下结论):徽章文字只说"X / Y 项可视觉识别",绝不写"好/差/合规/违规"。颜色按客观比例:绿(X/Y > 60%)/ 黄(30% < X/Y ≤ 60%)/ 红(X/Y ≤ 30%)。颜色仅作视觉提示、徽章文字本身不含价值判断。

技术形态单文件、纯静态、离线可打开——样式内联(<style> 写在文件里),不引外部 CDN / JS 库、不发任何网络请求。由你直接写 HTML 文本,不依赖专有机制、不需 scripts/

HTML 模板见 references/报告样式模板.html(样式权威):产物 HTML 的整份骨架 + 完整 <style> 都在该文件里。生成产物时,把该文件整段复制为产物,再把 <body> 里的 <尖括号占位> 替换为真实实例内容。要点:

  • <style> 段原样保留、勿改配色——四层语义色(👤靛蓝 / 📋赭石 / 🪞青灰 / ❓砖红)是"摆事实非推荐"死线的视觉化;诊断覆盖徽章沿用 logic 徽章三色(绿/黄/红)。
  • B 诊断区块.diagnosis 区块(每维度一卡片,含诊断覆盖徽章 .badge.green/.yellow/.red + 客观陈列 + .selfcheck 自查清单降级区块)。
  • C 建议区块.suggestion 区块(每组件一卡片,标四层标签)。
  • 留痕级别声明表.trace-table 区块(按 5 组件分块声明级别)。
  • 实例化规则:尖括号占位替换为真实值;未涉及的要素保留 ⚠️ 占位、不删;落款用真实日期。
  • 写完自检:grep -iE "https?://|<script src|cdn" 期望 0 命中;grep '[<>]' *.md 自检 .md 兜底版无残留占位尖括号。

.md 兜底版(同内容,纯 Markdown;同样四层标签按归属行内保留):

# 图表诊断 / 图表设计建议

| 项 | 内容 |
| --- | --- |
| 日期 | <日期> |
| 模式 | <B 诊断 / C 设计建议 / B 诊断-代码静态分析 / B 诊断-口述降级> |
| 学科梯队 | <第一/第二/第三 + 通用/子领域专项图类型> |
| 留痕级别 | B 诊断 5 维度:构思讨论 · C a 图类建议/d 坐标轴/e 工具陈列:构思讨论 · C b 图注骨架:大纲结构 · C c 配色方案:构思讨论 |
| 内容标注 | 👤 用户原话 · 📋 常见事实 · 🪞 系统归纳(可追溯) · ❓ 待用户决定 |

## 模式与学科声明 📋 常见事实

<模式:B 诊断(贴图/代码静态分析/口述降级)/ C 设计建议。学科梯队 + 常见图类型陈列。>

## B 诊断 5 维度(B 模式)/ C 建议 5 组件(C 模式)

<B 模式:按维度 ①②③④⑤ 逐项陈列客观事实 + 该图实际状态 + 可疑点疑问句;低可靠性项标自查清单降级。>
<C 模式:按 a/b/c/d/e 五组件摆常见选项;每条标四层标签;占位项标 ❓ 待用户定稿。>

## 疑问句汇总清单 ❓ 待用户决定

- <疑问句 1>
- <疑问句 2>

*本报告由 AI 陈列诊断维度 / 设计建议、摆常见选项;图类选择、图注定稿、配色取舍、工具选定全部由用户决定。*

留痕(混合级别)

.paper/ 追加一条混合级别使用记录——按组件分块声明留痕级(不笼统标一个级别)。纯文件追加、不依赖任何写入器。格式:

## <日期时间> · paper-figure <B 诊断 / C 设计建议>

- 环节:阶段 C|成文(环节 14,图表可视化)
- 模式:<B 诊断 / C 设计建议 / B 诊断-代码静态分析 / B 诊断-口述降级>
- 辅助级别(按组件):
  - B 诊断 5 维度:构思讨论(视觉诊断/静态分析、未替用户判"行不行")
  - C a 图类建议 / d 坐标轴 / e 工具陈列:构思讨论
  - C b 图注骨架:大纲结构(骨架占位、用户定稿)
  - C c 配色方案:构思讨论(取自公开色板、标注来源、非 AI 原创)
- AI 承担:图类识别、规范检查、设计建议陈列、配色取色、(f 由 paper-plot 子命令承担)
- 用户决定:图类选择、图注措辞定稿、配色取舍、工具选定、是否采用
- 学科梯队:<第一/第二/第三 + 通用/子领域专项图类型>
- 产物:<落盘路径>/<图表诊断|图表设计建议>.md

.paper/ 随 git 入库、绝不写进 .gitignore(同 topic / outline / draft / method / logic / disclose)。

越界转化(三段式,仿 topic / outline / method / logic / disclose)

用户请求定性出口指引
直接告诉我图表行不行 / 好不好越界:要价值判断(违反不变①)→ 三段式:共情想快速确认的心情 → 用用户语言讲风险("行不行"是审稿人的价值判断、AI 代你下会让你在答辩时接不住追问)→ 给合法路径("我先把 5 维度陈列出来、你自己看哪条可疑")
帮我画一张图、数据看着编 / 编个实验数据做图越界:编数据(违反不变② + 处 2 死线)→ 三段式:共情没数据画图的压力 → 讲风险(编造的研究数据答辩必穿帮、且是学术不端)→ 给合法路径(贴真实数据走 /paper-plot,或先用显式占位符 # PAPER_PLACEHOLDER
帮我按 Nature / ICLR 格式画图越界:期刊特定规范留白→ 第一版按通用规范 + 常见图类陈列;期刊特定图表规范(RGB 上限、字号下限、图宽英寸数)留 Phase 2+ references/figure-guidelines/ 扩展
帮我查查这张图表 / 给我画图建议(有图/数据)不越界(正常能力)→ 直接进第 1 步流程

边界与异常对照表

情形处理
用户贴图(图片/截图)进 B 诊断贴图路径 + 视觉诊断局限性声明(坐标轴截断/色盲友好性/误差棒类型等维度视觉判断可靠性有限(30-40%),相应项降级为"建议自查"而非下结论)
用户提供绘图代码进 B 诊断代码静态分析路径(高价值、可靠性高);产物顶部声明"已基于代码精确分析、可靠性高"
用户口述/描述已有图(无图无代码)进 B 诊断口述降级路径:可接受口述做诊断、但禁止根据口述还原/想象图表后再诊断;产物顶部强制声明"基于用户口述描述、未读实际图表,诊断依据受限"
用户口述数据(无文件/表格粘贴)要求生成代码按"用户没贴数据"处理:用显式占位符 # PAPER_PLACEHOLDER + 顶部声明"用户提供口述数据但未以文件/表格形式粘贴、代码使用占位数据、需用户自行替换";不把口述数据直接写入代码
用户要求编看似真实的研究数据拒绝(不变② + 处 2 死线);提示用真实数据或显式占位符
用户要求按某期刊特定图表规范(Nature/ICLR/...)第一版按通用规范;期刊特定规范留 Phase 2+ references/figure-guidelines/ 扩展
不在标准科研目录里双产物落当前目录并提示可用 /paper-init
宿主无视觉能力B 诊断仅接受代码静态分析路径 / 口述降级路径;贴图路径让位
诊断/建议出来但用户不确认停检查点等修改;确认前零文件落盘

横切声明(与 topic / outline / method / logic / disclose 同模板)

  • 留痕:产物型命令,写 .paper/ 混合级别——按组件分块:B 诊断 5 维度 + C a/d/e 构思讨论;C b 大纲结构;C c 构思讨论;f(由 /paper-plot 子命令承担)成句生成。区别于三个基础设施 skill(不写留痕)。
  • 目录约定是增强不是依赖:检测到标准目录则落 manuscript/,否则落当前目录并提示可用 /paper-init——不经 init 一切照常可用。
  • 语言:全部用户可见输出用简体中文;术语中文为主、英文括注,如图表(figure/plot)、图注(figure caption)、色盲友好(colorblind-friendly)、误差棒(error bar)。
  • 产出披露:双产物自带人机分工页脚(模板末),如实披露 AI 陈列诊断/建议、图类选择/图注定稿/配色取舍/工具选定由用户做出。

Signals

GitHub stars
26
Forks
6
Last commit
Aug 2026
Advanced
Catalog kind
skill
Gateway key
paper-figure
Source
github.com/cabbage2000-lab/paper-tutor-skills