Ggplot2 简明教程

ggplot2 - Marginal Plots

在本章中,我们将讨论边缘图。

Understanding Marginal Plots

边缘图用于评估两个变量之间的关系并检查其分布。当我们谈论创建边缘图时,它们不过是散点图,在相应的 x 轴和 y 轴的边距中包含直方图、箱形图或点图。

以下步骤将用于使用包 “ggExtra” 使用 R 创建边缘图。此包旨在增强 “ggplot2” 包的功能,并包含用于创建成功边缘图的各种函数。

Step 1

(如果您的系统中没有安装此包)使用以下命令安装 “ggExtra” 包以成功执行。

> install.packages("ggExtra")

Step 2

在工作区中包含所需的库以创建边缘图。

> library(ggplot2)
> library(ggExtra)

Step 3

读取我们曾在之前章节中使用过的所需数据集 “mpg”。

> data(mpg)
> head(mpg)
# A tibble: 6 x 11
manufacturer   model  displ   year   cyl   trans      drv   cty   hwy  fl  class
<chr> <chr> <dbl> <int> <int> <chr> <chr> <int> <int> <chr> <chr>
1 audi         a4     1.8     1999   4     auto(l5)   f     18    29   p   compa~
2 audi         a4     1.8     1999   4     manual(m5) f     21    29   p   compa~
3 audi         a4     2       2008   4     manual(m6) f     20    31   p   compa~
4 audi         a4     2       2008   4     auto(av)   f     21    30   p   compa~
5 audi         a4     2.8     1999   6     auto(l5)   f     16    26   p   compa~
6 audi         a4     2.8     1999   6     manual(m5) f     18    26   p   compa~
>

Step 4

现在让我们使用 “ggplot2” 创建一个简单的图,这将帮助我们理解边缘图的概念。

> #Plot
> g <- ggplot(mpg, aes(cty, hwy)) +
+    geom_count() +
+    geom_smooth(method="lm", se=F)
> g
create simple plot using ggplot2

Relationship between Variables

现在让我们使用 ggMarginal 函数创建边缘图,该函数有助于生成两个属性 “hwy” 和 “cty” 之间的关系。

> ggMarginal(g, type = "histogram", fill="transparent")
> ggMarginal(g, type = "boxplot", fill="transparent")

直方图边缘图的输出如下 -

relationship between variables

箱形边缘图的输出如下 -

box marginal plots