# Data Visualization Discipline

数据可视化的判断层...

- Repository: https://github.com/daymade/claude-code-skills (1509 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add daymade/claude-code-skills --skill data-visualization-discipline -g -a claude-code -y`
Codex: `npx skills add daymade/claude-code-skills --skill data-visualization-discipline -g -a codex -y`
Cursor: `npx skills add daymade/claude-code-skills --skill data-visualization-discipline -g -a cursor -y`
Gemini CLI: `npx skills add daymade/claude-code-skills --skill data-visualization-discipline -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add daymade/claude-code-skills`

## Description

数据可视化的判断层 SSOT, , 画任何图表、dashboard、看板之前先加载它，不是画完之后。管"该不该这么画"：这张图想让读者得出什么结论、用均值还是中位数、能不能聚合、堆叠还是折线、能不能上双轴、配色与颜色数量、同一实体跨图是否同色同位、表格该留几列。介质无关：HTML 报告页、React/Vue dashboard、PPT 原生图表、matplotlib/plotly/ECharts/D3、渲染成 PNG 的图，一律适用。Use when 动手画图之前，或评审既有图表（"这几张图有什么问题"、"图例为什么不一致"）。Not for 报告页的排版/组件/交互（用 report-with-html:report-with-html）或 PPT 原生图表的实现与渲染陷阱（用 deck-creator:deck-creator）。

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 数据可视化纪律

这是可视化**判断层**的唯一权威源。其他 skill 引用它、不复制它, , 一条规则出现在两处，就多一个将来会矛盾的地方。

## 边界：什么归我，什么不归我

| 问题 | 归属 |
|---|---|
| 这张图想让读者得出什么结论？该用什么图型？用均值还是中位数？能不能聚合？几个颜色？ | **本 skill** |
| 报告页怎么排、用哪个组件、什么皮、交互键位、浏览器渲染自验、认可语料 register | `report-with-html:report-with-html` |
| python-pptx 怎么落原生图表、次轴折线在 QuickLook 不渲染、中文掉字 | `deck-creator:deck-creator` |
| 图表用什么库实现 | 当前项目已声明的图表栈；没有就先调研选维护中的库，**禁止手搓图表引擎** |

参考文件清单见下一节末尾的表（按阶段锚定，一处维护）。

---

## 这份 skill 怎么组织的（**加规则之前先读这节**）

规则按**你在什么时刻会想起它**排，不按主题分类：**定意图 → 验数据 → 选形 → 编码 → 交付前自检**。

**阶段 1, 4 各有「交接检查」，阶段 5 是交付闸，交付前那道最重。** 这不是"一道闸抓所有规则", , 那会把闸撑到十几条，而检查清单一超过 9 条就开始被跳过（Gawande）。成熟做法是**多个停点各管各的**：飞机在滑行、起飞、巡航、落地有各自的清单，不是一张。所以本 skill 的判据是：

> **每条规则都必须被相应阶段的检查点抓住。** 不是每条都要进交付闸。

这个轴不是审美选择，是防膨胀装置。一份按主题堆叠的规则集会一直长, , 每收编一处沉淀就多几节，最后没人读得完，也没人知道新规则该放哪。所以：

**加一条新规则前，先回答：它在第几阶段被想起？它的违反被哪个检查点抓住？**

- **都答得上** → 写进那个阶段，正文里说清判据，并确认那个检查点的产物清单真的会暴露它。
- **答得出阶段、答不出检查点** → 把它加进**那个阶段的交接检查**（阶段交接不受 9 条预算限制，因为它只在那一刻问一次）。只有当它必须在**交付前**再查一遍时，才动交付闸, , 而交付闸是 5, 9 条 killer items 的预算，加一条得说清挤掉谁。
**这条准入规则同样管存量。** 最容易漏的不是新规则, , 是**规则立起来那天已经在文件里的内容，没人回头用它筛一遍**（"祖父豁免"）。但也不能因此开一张无边界重构的许可证，所以判据是有范围的：**每次实质改动这份文件时，顺手对你本次已经打开的那一节做一次同样的核对**；不为找问题去打开本次不涉及的章节。

**写完之后必须机械核一次，别靠记性**, , 把新规则的关键词 grep 一遍，看它在**检查点文字**里出没出现。**0 命中 = 它没挂上任何检查点**，回到上面几条重新归位。

以下限定缺一不可：

- **范围要说死**：各阶段的「阶段 N 交接检查」引用块 + 交付闸的**编号条目正文、产物行、以及豁免表**。豁免表要搜，但**它的命中意义是相反的**, , 见下一条。
- **>0 命中 ≠ 挂上，必须读那一处**。命中的可能是"这条闸在查这件事"（真挂上），也可能是"这条闸声明自己**不管**这件事"（豁免行）。**只在豁免行命中 = 反向证据**：它恰恰证明这条规则被明确排除在检查范围之外，等同 0 命中，要回去重新归位。
  > 例如，若"纯 KPI 数字卡片"只出现在闸 8 的豁免行、正文与产物行没有对应判据，说明该规则被排除。不能把"不管 KPI 卡片"读成"已经挂上"。
- **换 2, 3 个同义词再搜一遍**：实测过一次假阴性, , 搜"色盲"全文 0 命中，但文件一直用"**色觉障碍**"讲同一件事，只搜一个词会误判成"完全没覆盖"。
- **这个动作只对「写进阶段正文」那条出口有验证力**。直接写进交接检查的，grep **必然**命中（那个词就是你刚放进去的），**等于什么都没验证**, , 那条路径要反过来问："交接检查里这句，**正文里有对应的判据吗**？"没有的话它是一句无处可查的口令。判定为**战例**的则**整个跳过这一步**：战例本来就不该出现在检查点里，0 命中是正确结果，不是失败。

The rest: https://github.com/daymade/claude-code-skills/blob/HEAD/data-visualization-discipline/SKILL.md
