遍历应支持在序列与数据点两个层级之间切换
别名: 层级遍历 · 序列切换
概念解释
多序列图表的结构是两层的:顶层是序列("销售额""利润"),底层是每个序列内的数据点。只支持单一线性遍历的图表强迫用户在所有序列的所有点之间线性穿行(先听完序列 A 的 24 个月、再听序列 B 的 24 个月),想对比"两个序列在同一月份"的用户必须记住中间隔着的所有点。层级遍历把结构还给用户:在序列层选择"我在看哪条线",切换到点层后在该序列内移动,两层之间有固定的切换键。
机制
层级遍历有效的机制是它与图表的语义结构对齐:用户的分析问题大多以序列为框架("比较两条线的走势""看利润的去年表现"),线性遍历破坏这个框架(把"对比同一时间点"的任务变成记忆任务),层级遍历保留框架(先锁序列、再扫时间)。操作模型的常用约定:方向键左右在当前层级内移动(序列层切换序列、点层切换时间点)、Tab 或上/下键在层级间切换、Escape 返回上一层。层级切换的朗读反馈是可用的前提:进入序列层时播报"序列 2,共 3 个:利润",用户才知道自己现在操作的是哪一层。层级模型还天然适配渐进披露:默认进入序列层(快速概览所有序列),按需下沉到点层(细看某个序列),这与视觉用户"先扫整体再聚焦局部"的阅读路径同构——层级遍历因此不仅是可达性功能,也是给键盘用户重建视觉用户阅读策略的手段。
边界
层级模型的适用边界是图表的结构深度:两层模型(序列/点)覆盖多数柱状图与折线图;更深的结构(分组柱状图的组/子组/点三层)需要扩展层级数或合并层级,层级每多一层,用户的心智负担与按键成本都上升——超过三层时应考虑简化图形结构而非扩展遍历模型。单序列图表不需要序列层(一层即可),强行套用两层模型反而增加空操作。层级切换的键位需要与同组定义的遍历顺序协同:进入层级时焦点的落点(切到点层时从第一个点还是上次位置开始)必须有确定性行为。
怎么落地
- 多序列图表实现两层遍历:左右键在序列间移动,下钻键进入该序列的点层,返回键回到序列层。
- 层级切换时立即播报层级与上下文("进入点层:利润,2024 年 1 月,共 12 个点")。
- 键盘约定文档写明每层的可用键与切换方式,与遍历顺序定义放在一起维护。
- 验证:让屏幕阅读器用户完成"对比序列 A 与 B 在最近一个月的值"任务;需要记住大量中间信息才能完成即层级遍历缺失或设计不当。