统计图表小史:从霍乱地图到疫情曲线
1854年伦敦苏豪区暴发霍乱,十天内死了五百多人。医生约翰·斯诺把死亡病例逐个标在街区地图上,发现死者集中在一口叫布罗德街的水泵周围。他把这张地图交给教区委员会,水泵手柄被拆掉,疫情随之消退。这张地图后来被反复引用,不是因为它画得漂亮,而是因为它把一张表格里看不出的空间聚集,变成了肉眼可辨的事实。统计图表的历史,大概可以从这里算起。
在斯诺之前,数据主要以表格形式存在。1820年代,英国统计学会的年度报告里塞满了密密麻麻的数字,读一页要花十分钟。转折发生在1786年,苏格兰工程师威廉·普莱费尔发明了柱状图和饼图。他在《商业与政治图集》里用一排长短不一的柱子表示各国进口额,读者扫一眼就能排出顺序。普莱费尔自己说得很朴素:图形是给那些没耐心读表格的人看的。这句话放到今天依然成立。
折线图的普及要晚一些。19世纪中叶,比利时统计学家凯特勒把气温、死亡率、犯罪率画成连续曲线,发现它们随季节起伏。这是走势概念的雏形——不是看某一点的值,而是看一段时间的形状。1861年,法国工程师米纳德在一张图上画出了拿破仑远征俄国的兵力变化:线条粗细代表兵力,横轴是经度,纵轴是纬度,温度曲线压在下方。六万大军出发,回到巴黎时只剩一万。这张图后来被爱德华·塔夫特称为“有史以来最好的统计图形”。
图表类型的选择,本质上是对数据结构的判断。折线适合时间序列,因为它默认相邻点之间有连续性;柱状适合类别比较,因为它强调每个类别的独立高度;散点适合看两个变量的关系,比如身高和体重。选错图表的代价常常被低估。2016年有一份关于某地降雨量的报告,把十二个月的降水量画成饼图,每个扇形角度接近三十度,读者根本看不出雨季和旱季的差别。换成折线,趋势立刻清晰。
做数据观察这些年,我养成了一个习惯:拿到任何一张图表,先看横轴。横轴是时间还是类别,决定了这张图能回答什么问题。再看纵轴起点是不是零。截断纵轴是常见的视觉放大手法,比如把纵轴从90开始,10%的变化看起来像翻倍。这不是造假,但容易误导。2015年某财经媒体把一张失业率曲线截断后发布,读者在社交平台上惊呼“断崖式下跌”,实际变化不过0.3个百分点。
预测是图表最容易被滥用的功能。把历史数据拟合一条曲线,再向右延伸,画成虚线,这是很多报告的标准动作。问题在于,虚线部分的可信度取决于模型假设,而假设往往不写在图上。2020年春天,各类疫情走势图风行一时,有的模型预测某国单日新增会在两周内归零,实际却在一个月后出现第二波。图表本身没有错,错的是把预测当成结论来读。更稳妥的做法是同时给出区间,而不是一条干净的线。
今天做一张图比斯诺时代容易太多。Python的matplotlib、R的ggplot2、甚至Excel,几分钟就能出一张折线或散点。工具门槛降低之后,判断力反而更稀缺。一张图能不能用,不取决于它好不好看,而取决于它有没有诚实地呈现数据的形状。下次看到一张走势图,不妨多问一句:纵轴从哪开始,横轴跨了多久,虚线部分占了多少。这三个问题,能挡掉大部分误读。