跳到正文
格致开物MATHWIKI

折线图

折线图(line chart)把按顺序排列的观测点用线段连接,用来显示一个量随时间或其他有序数值怎样变化。点的位置表示观测,连线帮助追踪相邻点之间的变化;连接部分是否能当作中间时刻的数值,还需要另外说明。

四次读数,横轴不能等距摆放

设一个容器可能进水也可能排水,记录开始后 0,1,3,6 分钟的液体体积。下面是合成教学数据,用于比较时间间隔、变化率和连线方式,并非真实测量记录。

开始后时间 t(分钟) 体积 V(升)
0 100
1 120
3 150
6 180

先把四行放成 (0,100),(1,120),(3,150),(6,180),再按时间从早到晚连接。相邻观测间隔分别是一、二、三分钟,因此横向距离也应为 1:2:3。若把四次读数当作四个等距类别,就会把最后三分钟画得与最初一分钟一样短,改变读者对快慢的判断。

横轴为零到六分钟,纵轴为八十到二百升;四个点分别为零一百、一一百二十、三一百五十、六一百八十,横向间距为一比二比三
圆点表示观测时刻。辅助直角折线标出第二段的两分钟与三十升,便于计算斜率。

图中纵轴从八十升开始,目的是看清这组读数的变化,不代表容器在八十升处才有“零体积”。折线依靠坐标定位,不像条形图靠从基线起算的长度表示数量;可以选取合适显示范围,但不能省略刻度或让读者误解起点。英国国家统计局:坐标轴范围

对于少量观测或不规则时间间隔,保留点标记尤其有用:它让读者知道哪里有实际读数、哪里只有连接。英国国家统计局的折线图指南也以点标记区分不规则观测。英国国家统计局:Line chart

变化了多少,与变化得多快

从一分钟到三分钟,体积增加 ΔV=150120=30 L. 这三十升发生在两分钟内,所以平均变化率是 ΔVΔt=15012031=15 L/min. 图中横向辅助段长两分钟,竖向辅助段高三十升,二者相除就是这段连线的斜率。单位是升每分钟,不是升,也不是无单位的角度。

同样计算其余两段:

时间段(分钟) Δt(分钟) ΔV(升) 平均变化率(升/分钟) 相对初值的增幅
0 至 1 1 20 20 20/100=20%
1 至 3 2 30 15 30/120=25%
3 至 6 3 30 10 30/150=20%

后两段都增加三十升,但分别用了两分钟和三分钟,后一段平均增加得更慢。虽然四个观测值始终上升,三段平均变化率却从二十降到十五再降到十。“数值在增长”和“增长越来越快”是不同陈述。

整个六分钟的平均变化率为 18010060=80613.33 L/min. 它也等于按时间长度加权的平均: 20×1+15×2+10×31+2+3=806. 直接把三个变化率等权平均成十五,会忽略它们各自持续多久。

相对增幅还需要说明基数与期间

相对变化以开始值为基数: g=VbVaVa,Va0. 本例从一到三分钟增长百分之二十五,从零到一分钟增长百分之二十。但前者用了两分钟,不能只因 25%>20% 就说它增长更快。

若希望把一至三分钟的总变化折算为每分钟相同的相对增速 q,需解 120(1+q)2=150,q=1.25111.80%. 这是等效每分钟增速,并未证明容器每一分钟都按同一比例变化。全段从一百到一百八十升,累计增幅为 80%;也可核对三段倍率相乘为 1.20×1.25×1.20=1.80,不能把三个百分比直接相加。

相对增幅适用于具有相应基数意义的量。本例零升表示没有液体;摄氏温度从十度到二十度,却不能据此说热的程度“翻倍”。基数为零时普通相对变化公式无定义,基数为负时也需结合量的含义解释。

连接两个点,增加了什么假设

在一至三分钟之间画一条直线,相当于提供了一个分段线性插值:在两个读数之间,按固定斜率连接。对这一段, V^(t)=120+15012031(t1)=120+15(t1),1t3. 代入 t=1t=3 分别得到一百二十、一百五十,说明线段经过端点。代入 t=2 得到一百三十五升,含义是按这条连接线估计的中间值,不是新增了一次两分钟时的测量。

一般地,两个不同时间 ta<tb 的分段线性连接为 V^(t)=Va+VbVatbta(tta),tattb. 这由“起点数值加上斜率乘经过时间”得到,也是分段线性插值的定义。Driscoll 与 Braun:Piecewise linear interpolation

把线段延伸到六分钟以后则属于外推。最后一段斜率是十升每分钟,并不能仅凭它确认七分钟时有一百九十升;容器的进出水条件可能改变,甚至受容量限制。是否延伸需要物理信息或其他模型支持。

同一组点,可以连成不同的曲线

曲线图常指用曲线显示函数、趋势或连接观测点的图。它不是把折线的棱角抹圆这么简单:一旦读取曲线上未观测时刻的值,就选择了一种插值或模型。

仍使用原来的四个点。若要求连接函数是三次或更低次多项式,设 p(t)=a+bt+ct2+dt3.p(0)=100a=100。其他三个点给出 b+c+d=20,3b+9c+27d=50,6b+36c+216d=80. 第二式减去第一式的三倍,再除以二,得到 3c+12d=5;第三式减去第一式的六倍,再除以十,得到 3c+21d=4。两式相减可得 d=1/9,随后 c=19/9,b=22,所以 p(t)=100+22t199t2+19t3. 这里 t 取以分钟计的数值,函数输出以升计的数值;各系数的量纲与相应时间次幂匹配。多项式次数限制是新加的选择,并不是四个读数自带的事实。Driscoll 与 Braun:Polynomial interpolation

还可以构造另一条光滑曲线 q(t)=p(t)+t(t1)(t3)(t6). 此式同样约定输入输出使用上述数值单位,新增项的系数对应升每四次方分钟。在四个观测时刻,新增乘积总有一个因子为零,所以 q 也穿过全部四个点;在其他时刻,它通常与 p 不同。

同样四个观测点既可由直线段连接,也可由光滑曲线q连接;曲线在三到六分钟之间先下降再上升,两个方案在观测点处完全相同
实线为分段线性连接,虚线为文中明确给出的 q。后者中途的起伏来自所选函数,不是新增观测。

例如两分钟时,分段直线给出 135 升,而 p(2)=12289,q(2)=12289+2(1)(1)(4)=13009144.44. 图中的光滑曲线还在后三分钟内发生下降。四个读数本身排除不了中途先排水再进水;若另外已知这期间只进不出,就应加入单调性条件,排除这样的曲线。这说明假设必须来自问题,不能由“曲线更漂亮”代替。

平滑与插值也不是同一回事

插值要求经过给定点;平滑通常试图降低局部波动,可以不经过每个点。例如把前三次读数做简单平均,得到 (100+120+150)/3123.33 升,它不等于其中任一原读数。如果用这种结果画趋势,应保留原始点并说明平均窗口和放置时间。

本例时间间隔不相等,“每三条记录取平均”也不自动等于“每三分钟的平均体积”。要表示固定时间窗内的平均,还需定义覆盖范围、权重和对未观测部分的处理。平滑曲线适合呈现所选方法下的趋势,不能被重新标成未经处理的观测。

缺测处为什么要留出空白

前面的观测计划本来只有零、一、三、六分钟。现在考虑另一种记录情况:设备还计划在两分钟读取一次,但那次记录丢失。已经知道“应当有一次观测而没有得到它”,应在资料中标记缺测,并在跨越缺测处的线段留出间断。

仍显示零一百、一一百二十、三一百五十、六一百八十这四个已知点,一至三分钟之间不连线,顶部注明两分钟体积未知
两分钟处没有数据点,也没有画成零;缺口使缺测信息不会被一条连续线掩盖。

零体积是一个明确数值,缺测则是不知道,两者不能互换。若分析必须填补缺测,可以单独给出插补方法、估计点和不确定性标记;例如分段线性插补仍会得到一百三十五升,但它的身份应是估计。英国国家统计局建议在原本规律的数据出现缺测时保留线段缺口。英国国家统计局:Irregular and missing data

缺测与采样稀疏也有区别。只在六个小时的两端测量,即使两端相同,也不能判断中间始终不变;是否曾出现峰值需要更密的观测或机制信息。连线不会替人完成这些观测。

怎样选择连线与比较对象

时间应按真实先后排列;不能为了让线更顺而按数值大小重新排序。若横轴是没有连续顺序的城市或品牌,把类别任意连接会制造“途中上升下降”的印象,通常更适合条形图。若横纵轴是成对数值而不要求顺序,应考虑散点图

当变量在明确事件时跳变、其间保持不变时,阶梯线可能比斜线更符合定义,例如已公布价格只在调价时改变。反之,容器体积是否连续变化取决于过程和时间尺度,不能只因为绘图软件提供某种线型就选用它。

比较多个系列时,保持单位和时间基准一致,并用线型或点形补充颜色。图框拉高会让线显得更陡,改变纵轴范围也会放大视觉起伏;数学变化率仍应由标注的数值与时间计算。若一个系列是体积、另一个是流量,它们连单位都不同,应先解释联系,再选择分图或适当变换,不从两条线碰巧交叉推出两种量相等。

参考资料