📌  相关文章
📜  如何使用 ggplot2 在 R 中以文本为点制作箱线图?(1)

📅  最后修改于: 2023-12-03 15:23:51.508000             🧑  作者: Mango

如何使用 ggplot2 在 R 中以文本为点制作箱线图?

如果您需要制作一个能清晰展现数据分布的图表,箱线图是一个很不错的选择。在 R 中,可以使用基础的 boxplot() 函数来制作箱线图,但是如果想要更加美观和可定制化的图表,您可以使用 ggplot2 包来完成。本文将介绍如何使用 ggplot2 在 R 中以文本为点制作箱线图。

准备数据

首先,我们需要准备一组数据。假设我们有一个数据集 df,其中包含 group 列和 value 列,分别表示样本所在的组别和观测值的数值。以下是一个简单的示例数据:

df <- data.frame(
  group = rep(c("A", "B", "C"), each = 100),
  value = c(rnorm(100, 50, 10), rnorm(100, 60, 10), rnorm(100, 70, 10))
)
制作箱线图

接下来,我们可以使用 ggplot2 包来制作箱线图。首先,需要加载 ggplot2 包和 dplyr 包(用于数据处理)。然后,可以使用 ggplot() 函数创建一个空白的绘图区域,并使用 geom_boxplot() 函数添加箱线图图层。为了让每个样本用实心点表示,我们还需要添加一个 geom_dotplot() 图层。最后,我们可以使用 facet_wrap() 函数按组别分组显示箱线图。

library(ggplot2)
library(dplyr)

ggplot(df, aes(x = group, y = value)) + 
  geom_boxplot() + 
  geom_dotplot(binaxis = "y", stackdir = "center", dotsize = .5) + 
  facet_wrap(~ group, scales = "free")

效果如下图所示:

箱线图

解读箱线图

在箱线图中,箱子的上边界和下边界分别表示第三个四分位数和第一个四分位数,箱子内部的线表示中位数。箱子之外的线条称为“须”,它们从箱子上下边界延伸到观测值的最大值和最小值。任何超出须的值将被记为单独的点。在上面的图表中,黑色点表示每个样本的具体数值。

总结

使用 ggplot2 包可以轻松地制作美观和可定制化的箱线图。在我们上面的例子中,我们使用 geom_boxplot() 函数添加了箱子和须,并使用 facet_wrap() 函数按组别分组。我们还使用了 geom_dotplot() 函数在箱线图上显示每个样本的具体值。