数据可视化:从图表到决策的实践方法
上个月整理一份电商销售数据时,我差点被自己骗了。原始表格里,某品类周销售额从120万降到80万,折线图上看起来像悬崖式下跌。但把时间轴拉长到12周,那只是正常波动——前一周有促销活动,基数偏高。数据可视化最危险的地方就在这里:同样的数字,换一种呈现方式,结论可能完全相反。
图表选型不是审美问题,而是逻辑问题。折线图适合展示连续时间上的走势,柱状图适合比较不同类别的数值,散点图用来观察两个变量之间的关系。见过太多把类别数据画成折线图的例子:五个不同城市的销售额,用折线连起来,暗示了一种根本不存在的连续性。如果类别之间没有顺序关系,柱状图或点图更诚实。
坐标轴是另一个重灾区。截断Y轴起点,能把1%的波动放大成剧烈震荡。2015年某财经媒体用截断坐标轴展示某公司股价“暴跌”,实际上从45.2元跌到44.8元,幅度不到1%。反过来,把Y轴拉得过长,又会掩盖真实变化。我的习惯是:折线图Y轴从0开始,除非有明确理由,并且在图注里写清楚截断范围。
颜色用得好是信息,用不好是噪音。分类超过7种时,人眼区分色块的能力急剧下降。与其硬塞12种颜色,不如把次要类别合并为“其他”。连续数据用渐变色,比如从浅蓝到深红表示数值高低,比彩虹色更符合直觉。另外,红绿色盲占男性人口约8%,红绿搭配的图表对他们基本无效。用蓝橙替代红绿,是个低成本改进。
动态和交互不是必须的,但用对了能解决静态图表的拥挤问题。比如展示全国300个城市的月度数据,静态地图会糊成一团。做成可筛选的交互图表,用户自己选时间范围和区域,信息密度反而更高。不过要警惕:交互图表如果默认视图没选好,大多数人根本不会去点筛选器。默认状态应该展示最有代表性的切片,比如最近完整月份、全部区域汇总。
做预测类可视化时,把置信区间画出来比只画一条预测线诚实得多。某物流公司用历史数据预测下月单量,模型给出均值1.2万单,但90%置信区间是0.9万到1.6万。只展示1.2万那条线,管理层会当成确定值;画出区间,讨论就会转向“最坏情况怎么应对”。预测本身不是问题,隐藏不确定性才是。
最后一步常被忽略:写图注。图注不是重复标题,而是交代数据来源、时间范围、关键定义。比如“活跃用户”是指7天内登录过的账号,还是30天内有过任意操作的账号?口径不同,走势可能差出两倍。我的做法是,每张对外图表都配一段不超过50字的说明,写清楚这三个要素。看起来麻烦,但能省掉后续无数轮“这个数怎么来的”的追问。
可视化不是把数据画出来就完事,它是一次表达。表达就有立场,有取舍。每次做完图,我会问自己:如果换一种画法,结论会不会变?如果会,那这种画法就需要更多理由。数据不会说谎,但图表可以。观察数据的人,得先观察自己的图表。