什么时候用它
折线图用来读沿一个有序轴的变化:时间、年龄、剂量、距离或步骤。横轴必须有真实顺序;如果 x 只是几个没有先后的类别,把点连起来会凭空制造“过程”。
单条线看变化方向和速度;多条线则看各组是否一起动、哪一组更快、何时开始分离,以及轨迹有没有交叉。
怎么读
- 先沿横轴追方向。 上升、下降、平台或拐点出现在哪里。
- 再比较斜率。 同一段时间内,哪条线变化更快。
- 看间距。 线之间逐渐拉开,说明组间差异随时间扩大;逐渐靠拢则相反。
- 找交叉。 两条线交换高低顺序时,单独比较起点或终点都会漏掉信息。
- 确认点的位置。 线段之间没有真实观测;折线只是连接相邻点,不代表中间过程真的线性。
常见陷阱
- 横轴无序却连线。 A / B / C 三组如果没有先后关系,换一下排列就会得到另一条“趋势”;那应该画点图或柱图。
- 排序错了。
geom_line()会按 x 排序,但字符串日期和月份名称可能不是时间顺序。绘图前先把 x 转成 Date、数值或有序 factor。 - 只画线不画点。 读者会把整条线当成连续测量。观测点不密时,叠一层小圆点能诚实地告诉人数据在哪里。
- 把平滑线当成原始数据。 loess 曲线是局部估计,不经过每一个观测,也会在点与点之间给出看似连续的轨迹。它适合概括形态,不适合精确读数。
- 点太抢。 点只负责标记观测位置,不应比线更醒目;尺寸通常比散点图小。
- 线太细。 缩进论文双栏或导出后,低饱和颜色的细线很容易消失。按最终版面检查,不按 RStudio 的大预览窗口判断。
- 五条线重复使用两种颜色。 同色线会交叉或靠近,读者无法持续追踪。色板容量不足时,应突出部分序列,而不是循环颜色。
- 每条线再配一种点形或线型。 颜色、形状、虚实一起变化会让图例和图面同时过载。常规彩色图先只用颜色。
- 忽略分组。
aes(group = Tree)不能漏;否则 ggplot 可能把不同树的点按年龄连成一条折返线。
配色
五棵树是五个无序类别,完整分组版使用五色定性色板 walter_white2。颜色沿整条线保持不变,读者才能从左到右持续追踪同一棵树。
色板少于五色时,不插值、不循环,也不删掉其余轨迹:所有线先用浅灰画成上下文,再把与色板容量相同的重点序列覆盖在上面。浅灰表示“仍在图中,但当前不由色板编码”,不是第六个类别。



