「颜色映射的『感知均匀性』骗局」——为什么viridis不是终点,而是起点
数据可视化领域有个被奉为圭臬的准绳:感知均匀的色图(perceptually uniform colormaps)。Matplotlib 2.0 默认换成 viridis 后,几乎没人敢再用 jet。但作为常年评审研究图表的人,我想拆穿一个被系统性忽略的真相:viridis 的『均匀性』只在特定色彩空间成立,而那个空间与人类视觉的底层机制并不完全一致。
viridis 的设计基准是 CAM02-UCS(一种色彩外观模型),它试图让相邻色阶的感知距离相等。这比 jet 的『亮度非单调』进步巨大——jet 里黄色和青色之间有一条虚假的亮度脊线,会制造不存在的边界。但 CAM02-UCS 本身是平均观者模型,它假设所有观察者的色彩感知相同。现实中,约 8% 的男性和 0.5% 的女性有某种形式的色觉缺陷(红绿色弱最常见)。对这些人而言,viridis 从蓝到绿的过渡段会塌缩成同一种颜色,关键数据差异直接消失。
更隐蔽的是:连续色图的均匀性不等于分类色图的辨识度。很多人把 viridis 的连续色阶直接截断成 5-7 类用于分类数据,结果相邻类别(如第4和第5档)在色弱视角下几乎无法区分。Crameri et al. (2020) 在 Nature Communications 上提出 ‘scientific colour maps’ 时,专门测试了色弱模拟,发现 viridis 在 deuteranopia 模拟下的区分度并不理想。
我的建议不是『不要用 viridis』,而是:在发布任何图表前,用色觉模拟工具(如 colorblindr、dichromat)过一遍。如果你的结论在色弱模拟下依然成立,那才是真正的鲁棒可视化。
一个值得辩论的问题:当『感知均匀』与『色弱友好』冲突时(它们经常冲突),可视化标准应该优先满足谁?是统计学上的平均观者,还是被长期忽视的少数群体?







0 Comments