visualization v4.0.0 801 words

流程图设计标准 v4.0 — 布局与视觉规范

Source: flowchart

流程图设计标准 v4.0

范围:流程图的布局、美学和视觉设计原则。 符号形状、颜色、边类型 → 参见 std-flowchart-symbols-v1(唯一真理源)。

核心哲学:美化是手段,传递信息才是目的。 任何让读者无法在 3 秒内叙述主流程的装饰都是有害的。


1. 设计公理

流程图是信息传递的视觉语言。 每个设计决策只需回答一个问题:这是否帮助读者更快理解逻辑? 如果不是,删除它。

优先级 目标 衡量标准
P0 3秒扫描 读者无需点击即可叙述主流程
P1 直线 能直的线必须直——禁止不必要的曲线或绕路
P2 无重叠 节点不重叠节点;边不穿过节点;边交叉最小化为零
P3 形状=含义 每个节点的形状瞬间表明"它是什么"(参照符号标准)
P4 颜色=角色 相同语义角色→相同颜色,无猜测空间
P5 线条层级 主流程线明显比其他所有线更粗/更深
P6 一屏可见 fitView 显示所有节点,无需滚动、拖拽或缩放

2. 颜色原则

2.1 统一性

2.2 对比度

2.3 精简性

2.4 场景适配

场景 建议
技术文档 直接使用标准调色板(低饱和度,高可读性)
演示文稿 描边宽度+1px;稍大节点以适应投影仪
打印 / PDF 确保所有虚线在黑白打印中可区分(靠虚线样式,非颜色)
深色背景 反转填充/描边变体(需单独处理)

3. 节点设计原则

3.1 尺寸标准化

属性 容差
最小宽度 120px
最大宽度 240px
最小高度 48px
最大高度 96px(2行)
圆角 8px(Process),16px(AI/Display),0(Diamond) 按符号标准
描边宽度 2px(常规),3px(强调:AI、Internal Storage) 按符号标准

3.2 内容密度

每个节点最多 3 个内容区域:

┌──────────────────────┐
│  标题               │  ← 动词+宾语,≤ 24字符
│  副标题             │  ← 结果/产物,≤ 36字符
│  [标签] [标签] [+N] │  ← 产物名称,≤ 3个标签
└──────────────────────┘
区域 规则
标题 祈使动词+宾语。如 解析PDF训练模型检查质量
副标题 描述输出或方法。如 解析章节 + 提取图表
标签 产物名称(最多3个),溢出显示 +N

4. 边设计原则

4.1 视觉层级

读者应瞬间识别哪条线是"主干道":

层级 边类型 视觉权重
前景 主流程 3px,黑色,实线,透明度 0.85
中景 通过/失败门 2px,绿/红,实线/虚线,透明度 0.70–0.80
背景 数据/跳转/反馈 1.5px,柔和颜色,透明度 0.40–0.50

4.2 直线规则(不可协商)

如果一条线能直,它就必须直。 对齐节点之间的弯曲线始终是bug。

规则 描述
对齐时必须直 如果源和目标共享相同X(垂直流)或Y(水平流),边必须是单段直线——零弯折。
偏移时直角 如果源和目标未对齐,使用恰好一个直角弯(L形)。主流程禁用贝塞尔曲线。
禁止多余曲线 主流程、通过门、失败门禁止贝塞尔/样条路由。仅跳转和反馈边可使用曲线,且仅在必要时。
布局产生直线 节点正确对齐时,边不需要路由技巧。先修布局,非修边。

4.3 路由规则

规则 描述
固定端口 L→R布局:左进右出。T→B布局:上进下出。
禁止自环 source === target 的边始终过滤掉——零例外。
总览无回边 除最多1条反馈边。所有循环放在详细视图中。
零交叉目标 重排节点以消除所有边交叉。如果真不可能,以直角交叉并留可见间隙。
边不穿过节点 边绝不可视觉上穿过或重叠未连接的节点。

5. 布局原则

5.1 主干优先

每个流程图必须有恰好一条主干(脊柱)。所有其他信息作为侧边栏、标签或详细视图挂在脊柱上。

5.2 方向规则

节点数 方向 布局方式
≤ 5 左→右 单行,direction: right
6–10 网格(L→R, T→B) grid-rows: 2, grid-columns: 5
> 10 分为总览+详细 总览 ≤ 10节点;多余作为下钻

5.3 换行规则(硬性规定)

5.4 对齐(不可协商)

规则 描述
同行Y对齐 同行所有节点共享完全相同的Y坐标。容差:0px
同列X对齐 同列所有节点共享完全相同的X坐标。
网格吸附 使用 grid-rows + grid-columns 机械强制对齐。
先对齐后路由 先对齐节点,再画边。直线是对齐节点的自然结果。

5.5 间距

指标
水平节点间距 60px
垂直节点间距 40px
同行Y容差 0px(精确对齐)
同列X容差 0px(精确对齐)
组内间距 16px
组间步骤间距 28px
边到非连接节点间距 ≥ 10px

6. 总览设计(L0)

6.1 硬性限制

指标 目标
节点 = 10(恰好)
主边 9–11
反馈边 ≤ 1
fitView 所有10个节点无滚动可见
回边 0(除1条允许的反馈边)

6.2 侧边栏模式

产物、配置和数据产品不应是主干节点:


7. 详细设计(L1+)

指标 目标
每个详细视图节点 ≤ 15
嵌套深度 ≤ 2层(L0 → L1 → L2 最大)
显示的边类型 主流程 + 门 + 数据(全部6种类型)

8. 交互原则


9. 图例(必需)

每个图表必须包含图例:

  1. 本图中使用的符号形状(24种标准类型的子集)
  2. 本图中使用的边类型(6种标准类型的子集)

10. 反面模式

反面模式 问题 修复
对齐节点间的弯曲线 看起来像bug 对齐节点→线自然变直
节点重叠节点 不可读 增加间距;重排列/行
边穿过节点 混淆连接关系 重排节点或增加路由间距
所有边同粗细 无层级 主流程3px,其他1.5px
总览>10节点 认知过载 分组为折叠容器
主流程贝塞尔曲线 不必要的复杂性 使用正交/阶梯路由
产物作为主干节点 破坏动作脊柱 移至标签或侧边栏

11. 验收清单(8项测试)

# 测试 通过标准
1 3秒扫描 无需点击,3秒内叙述主流程
2 所有线直 对齐节点间的每条边都是单段直线
3 零重叠 无节点重叠;无边穿过未连接节点
4 零交叉 无边交叉(或以90°交叉)
5 形状扫描 每个节点的形状瞬间表明它是什么
6 零自环 无 source === target 的边
7 视觉层级 次要边明显比主要边更轻
8 fitView测试 "显示全部"适配所有内容,无重叠

参考

Skills Using This Standard (1)