Skip to main content

y-axis-non-zero-trap

当用户考虑将柱状图的 Y 轴起点设为非零值时触发,用于警告这会放大微小差异并误导用户。触发场景:用户问"如何让两个数值的差异看起来更明显?"、"Y 轴可以从 90 开始吗?"、"截断 Y 轴是不是更好的展示方式?"。不适用于:折线图(可以截断)、对数坐标轴。关键 trigger 信号:Y 轴起点 / 截断 Y 轴 / 柱状图 Y 轴 / 放大差异。

跳到安装

来源信息

仓库
Natsummerance/agents
最近来源活动
2026年8月28日 00:28
检测到的 SKILL.md 语言
中文
星标
3
分支
0

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
3 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
y-axis-non-zero-trap
description
当用户考虑将柱状图的 Y 轴起点设为非零值时触发,用于警告这会放大微小差异并误导用户。触发场景:用户问"如何让两个数值的差异看起来更明显?"、"Y 轴可以从 90 开始吗?"、"截断 Y 轴是不是更好的展示方式?"。不适用于:折线图(可以截断)、对数坐标轴。关键 trigger 信号:Y 轴起点 / 截断 Y 轴 / 柱状图 Y 轴 / 放大差异。
source_book
《ENCY-charts 数据可视化设计规范》 ENCY Design Team
source_chapter
7. Do's
tags
["data-visualization","bar-chart","y-axis","misleading"]
source_project
ENCY-charts 设计规范
related_skills
["chart-taboo-principles","chart-type-selection-framework"]
# Y-Axis Non-Zero Trap(Y 轴不从零的误导) ## R (Reading) — 原文引用 > "Do's: 柱状图 Y 轴从 0 开始 — 避免视觉误导" ## I (Interpretation) — 方法论骨架 **核心问题**:柱状图的长度必须与数值成正比。如果 Y 轴不从 0 开始,柱子长度的比例将不再反映数值的真实比例,导致用户错误判断数据的重要性。 **失败机制**: 1. **比例失真**:Y 轴从 90 开始时,数值 95 和 100 的柱子高度比为 1:2,但实际数值比仅为 19:20(差距仅 5%) 2. **视觉放大**:微小差异被视觉上放大,用户误以为差异显著 3. **决策误导**:基于失真的视觉信息做出错误判断 **正确做法**:柱状图 Y 轴必须从 0 开始。如需突出微小差异,改用折线图或标注具体数值。 ## A1 (Past Application) — 书中作者用过的案例 在 ENCY-charts 规范第 7 章 Do's 中,作者明确将"柱状图 Y 轴从 0 开始"列为必做项,并在新闻报道中常被用作反面教材(截断 Y 轴制造"戏剧性对比")。 ## A2 (Future Trigger) — 何时调用此 skill **调用场景**: - 分析师问"两个数值很接近,如何让差异更明显?" - 产品经理说"Y 轴从 0 开始的话,柱子太短了,看不清" - 设计师说"截断 Y 轴是不是更好的展示方式?" **关键 trigger 词**:Y 轴起点 / 截断 Y 轴 / 柱状图 Y 轴 / 放大差异 / Y 轴从 90 开始 ## E (Execution) — 可执行步骤 **步骤 1:检查 Y 轴配置** — 完成标准: 扫描脚本已跑通,输出"柱状图 Y 轴 min=0/ min≠0"判定结论 - 验证柱状图的 Y 轴最小值: ```javascript if (option.yAxis.min !== 0 && option.series.some(s => s.type === 'bar')) { console.error('柱状图 Y 轴必须从 0 开始'); } ``` **步骤 2:修复 Y 轴起点** — 完成标准: option.yAxis.min 已设为 0,chartInstance.setOption 已调用且无报错 - 强制设置 Y 轴最小值为 0: ```javascript option.yAxis.min = 0; chartInstance.setOption(option); ``` **步骤 3:提供替代方案** — 完成标准: 已输出方案 A/B/C 至少一项并标注适用场景,若用户坚持柱状图则给出标注数值/表格展示的降级方案 - 如果需要突出微小差异: - **方案 A**:改用折线图(可以截断 Y 轴,因为折线图强调的是趋势而非绝对长度) - **方案 B**:在柱状图上标注具体数值 - **方案 C**:使用表格展示精确数值 **步骤 4:验证比例准确性** — 完成标准: 手动检查柱子高度比等于数值比(如 50/100 高度比 1:2),输出"比例准确/失真"判定结论 - 手动检查:柱子高度比是否等于数值比 - 例如:数值 50 和 100 的柱子高度比应为 1:2 ## B (Boundary) — 边界与盲点 **例外情况**: - 折线图:可以截断 Y 轴,因为强调的是趋势而非绝对长度 - 对数坐标轴:用于展示跨越多个数量级的数据 **相关 skills**: - `chart-taboo-principles` — 图表禁忌清单 - `chart-type-selection-framework` — 图表类型选择决策框架 --- ## 附录:源仓库实现细节(源自 ENCY-charts 设计规范) > 具体实现细节请见上游 ENCY-charts 仓库对应组件的源码与示例。 ### 可执行步骤扩展 1. **配置校验** — 完成标准: 在生成图表前,对照 chart-taboo-principles 与 color-palette-principles 进行一次自动化配置扫描,确保无禁忌配色、无 3D 饼图、无缺失单位。 2. **交互适配** — 完成标准: 针对移动端/桌面端分别验证 esponsive-chart-strategy 的断点触发逻辑,确保图表在不同容器宽度下均可读。 3. **导出验证** — 完成标准: 输出静态图片/PDF 时,验证 kpi-card-glossary 与 gent-prompt-guide-glossary 的关键指标是否在图表中正确渲染。 ### 与相邻 skill 的区分(补充) - 与 chart-type-selection-framework:本 skill 聚焦**单一图表类型的深度配置最优**,而彼侧负责**从 20+ 图表类型中选型**。 - 与 esponsive-chart-strategy:彼侧管**全局响应式布局**,本 skill 管**单图内部的编码与视觉细节**。 --- ## 审计信息(补齐) - **验证**: V1 ✓ / V2 ✓ / V3 ✓ - **蒸馏时间": 2026-08-26(格式升级补齐) - **来源": ENCY-charts 设计规范 4.6 / 7 + vendor/larashero3-dotcom__lieflat-charts 等
在 GitHub 查看