R语言数据可视化 ggplot2基础1 ggplot2 图形的分层语法 Layered Grammar 简介

本文介绍了ggplot2作为R语言数据可视化最强大的包,其核心在于分层语法。文章详细阐述了分层语法的组成,包括数据、统计变换、几何对象、刻度、坐标系统和面板,并通过实例解析如何运用这些组件理解ggplot2代码,帮助读者掌握数据图形化的逻辑和技巧。
摘要由CSDN通过智能技术生成

R语言数据可视化 ggplot2基础1 ggplot2 图形的分层语法 Layered Grammar 简介

ggplot2是tidyverse包的一部分,tidyverse是Hadley Wickham及其团队了为了能够系统性处理数据、图表开发的一个包。对我们统计人来说,尽管R语言提供了很多数据可视化的方法,但ggplot2依然是R语言做可视化的最优雅、最强大的包。gg的含义是grammar of graphics,这就暗示了ggplot2就是描述与建立图形的语言。这一讲我们介绍分层语法的主要内容,这些内容将帮助大家理解ggplot2的函数与命令。一些细节可以参考Hadley Wickham的文章A Layered Grammar of Graphics,这篇文章介绍了Hadley Wickham对图形对象的理解,Layered Grammar的组成与应用等内容。

Hadley Wickham认为一个plot需要有下面的一些组成部分:

  1. 图层(layer):数据集、一系列把数据集变成图形的映射(aesthetic mapping)、一个或一系列图形组成的几何对象(作为一个图层)、以及可能需要的统计变换(中心化、标准化等)、位置调整
  2. 面板(facet):一个facet由多个subplot构成,可以操作每个subplot的角度与位置
  3. 刻度(scale)
  4. 坐标系统(coordinates system)

下面我们逐个介绍这些内容。


分层语法的组成(data-stat-geom-scale-coord-facet)

数据(data)当然是画图的基础,但在分层语法中,数据与建立图形的命令是独立的,我们把代码看成是一个映射(mapping),数据就是映射的输入,图形是映射的输出,所以建立一种图形的命令应该适用于不同的数据集,按Hadley Wickham的原话来讲,就是Data are what turns an abstract graphic into a concrete graphic.

通常对输入的数据集,我们可以做一些统计变换(statistical transformation, 简称stat)来让图形“好看”一点,下面是ggplot2中常用的stat:
在这里插入图片描述
stat是一个映射,它把原始数据作为输入,然后用输出的数据作为创建图形的数据。实际上stat这一步就是我们所熟知的对原始数据做的统计处理。需要注意的是stat受刻度(scale)与坐标系统(coordinate system,简称

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值