美学最佳实践

使用 ggplot2 进行数据可视化入门

Rick Scavetta

Founder, Scavetta Academy

选择哪些美学?

  • 发挥创意,并且
  • 遵循清晰准则
  • 雅克·贝尔坦(Jacques Bertin)
    • 《图形符号学》,1967
  • 威廉·克利夫兰(William Cleveland)
    • 《绘图要素》,1985
    • 《数据可视化》,1993
使用 ggplot2 进行数据可视化入门

形式服从功能

使用 ggplot2 进行数据可视化入门

形式服从功能

功能

主要:

  • 表达准确、高效

次要:

  • 视觉上美观

指导原则

切勿:

  • 歪曲或掩盖数据
  • 以复杂性迷惑读者

务必:

  • 考虑每个图的受众与目的
使用 ggplot2 进行数据可视化入门

使用 ggplot2 进行数据可视化入门

使用 ggplot2 进行数据可视化入门

从数据提取信息

使用 ggplot2 进行数据可视化入门

使用 ggplot2 进行数据可视化入门

使用 ggplot2 进行数据可视化入门

使用 ggplot2 进行数据可视化入门

最佳美学选择

  • 高效
    • 比数值摘要更快概览
  • 准确
    • 将信息损失最小化
使用 ggplot2 进行数据可视化入门

美学——连续变量

ggplot(iris, aes(x = Sepal.Length,
                 y = Sepal.Width,
                 color = Species)) + 
  geom_point()

使用 ggplot2 进行数据可视化入门

美学——连续变量

ggplot(iris, aes(color = Sepal.Length,
                 y = Sepal.Width,
                 x = Species)) + 
  geom_point()

使用 ggplot2 进行数据可视化入门

使用 ggplot2 进行数据可视化入门

三幅鸢尾花散点图

使用 ggplot2 进行数据可视化入门

三幅散点图,y 轴未对齐

使用 ggplot2 进行数据可视化入门

单图分面,共用 y 轴

使用 ggplot2 进行数据可视化入门

使用 ggplot2 进行数据可视化入门

美学——分类变量

ggplot(iris, aes(x = Sepal.Length,
                 y = Sepal.Width, 
                 col = Species)) + 
  geom_point()

使用 ggplot2 进行数据可视化入门

美学——分类变量

ggplot(iris, aes(x = Sepal.Length, 
                 y = Sepal.Width, 
                 col = Species)) + 
  geom_point(position = "jitter", 
             alpha = 0.5)

使用 ggplot2 进行数据可视化入门

现在轮到您了

使用 ggplot2 进行数据可视化入门

Preparing Video For Download...