章节摘要:ggplot2 自带的 mpg 数据集收录 234 款车型的油耗与参数。本章的"案子"是回答一个反直觉的疑问:为什么排量更大的车,高速路况油耗反而看起来更低?破这条线索,要把可视化从"画个图"升级成"图形语法"——用映射、图层、分面把证据摆到最容易开口的位置。
案子的起点是一张散点图:横轴排量、纵轴高速油耗,点云里藏着结构——同一排量上下两撮点,像两批不同的车。顺着这条裂缝查下去,会发现驱动方式、气缸数这些类别变量才是幕后变量。主线由此展开:先用基础绘图系统白手起家,再学 ggplot2 的图形语法系统化重画,最后用分面、坐标变换等专题手法把结论钉死。
拐点在第 2 节:基础绘图"一条命令一个图",改图靠背参数;ggplot2 把图拆成可组合的语法成分,同一个底图换几何对象就是另一种图、加一个分面就多一个视角。结论:可视化不是装饰结案报告的最后一道工序,而是排查过程本身——本案的关键线索(两撮点)就是图先"供出来"的。
| 易错点 | 症状 | 处方 |
|---|---|---|
| 补画出界 | 第二组点整层消失 | 首画时用全量 xlim、ylim |
| png 忘关 | Plots 面板失灵 | dev.off 有开必关 |
| aes 放常量 | 图例多出多余项 | 常量写进 geom 参数 |
| cor 遇 NA | 矩阵整格变白 | use 等于 complete.obs |
案子的结论可以落锤:排量与高速油耗(每加仑里程)整体负相关,散点图上的"两撮点"由驱动方式造成——前驱小型车占据高里程带,四驱与大排量车型压低整体表现;按驱动方式分组后,每组内部"排量增大、里程下降"的规律全部成立。方法论上本章立了两块碑:图是侦查工具而非装饰工序,本案关键线索正是散点图先"供出"的;图形语法把换视角变成改参数,这让"按组重画"便宜到可以随手做。但图只回答"看起来如此",第 5 章的检验将回答"是否站得住"。
图把线索摆上了台面,但"差异是否显著、能不能下结论"要靠统计推断。下一章的睡眠药物案进入假设检验的地界。