ggplot2 - 多个图
在本章中,我们将重点介绍如何创建多个图,这些图可进一步用于创建三维图。将涵盖的图列表包括 −
- 密度图
- 箱线图
- 点图
- 小提琴图
我们将使用前几章中使用的"mpg"数据集。该数据集提供了 1999 年至 2008 年 38 种流行车型的燃油经济性数据。该数据集随 ggplot2 包一起提供。遵循下面提到的步骤来创建不同类型的图表非常重要。
> # 加载模块 > library(ggplot2) > > # 数据集 > 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~
密度图
密度图是上述数据集中任何数值变量分布的图形表示。它使用核密度估计来显示变量的概率密度函数。
"ggplot2"包包含一个名为 geom_density() 的函数来创建密度图。
我们将执行以下命令来创建密度图 −
> p −- ggplot(mpg, aes(cty)) + + geom_density(aes(fill=factor(cyl)), alpha=0.8) > p
我们可以从下面创建的图中观察到各种密度 −

我们可以通过重命名 x 和 y 轴来创建图,这样可以保持更好的清晰度,并包含具有不同颜色组合的标题和图例。
> p + labs(title="密度图", + subtitle="按气缸数分组的城市里程", + caption="来源:mpg", + x="城市里程", + fill="# 气缸")

箱线图
箱线图也称为箱须图,表示数据的五个数字摘要。五个数字摘要包括最小值、第一四分位数、中位数、第三四分位数和最大值等值。穿过箱线图中间部分的垂直线被视为"中位数"。
我们可以使用以下命令创建箱线图 −
> p <- ggplot(mpg, aes(class, cty)) + + geom_boxplot(varwidth=T, fill="blue") > p + labs(title="A Box plot Example", + subtitle="Mileage by Class", + caption="MPG Dataset", + x="Class", + y="Mileage") >p
在这里,我们根据 class 和 cty 的属性创建箱线图。

点图
点图类似于散点图,只是维度不同。在本节中,我们将在现有的箱线图中添加点图,以获得更好的图像和清晰度。
可以使用以下命令创建箱线图 −
> p <- ggplot(mpg, aes(manufacturer, cty)) + + geom_boxplot() + + theme(axis.text.x = element_text(angle=65, vjust=0.6)) > p

点图的创建方式如下 −
> p + geom_dotplot(binaxis='y', + stackdir='center', + dotsize = .5 + )

小提琴图
小提琴图也是以类似的方式创建的,只是小提琴的结构发生了变化,而不是盒子。输出清楚地在下面提到 −
> p <- ggplot(mpg, aes(class, cty)) > > p + geom_violin()
