📜  使用 R 中的 ggplot2 包为每组的平均值添加行(1)

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

使用 R 中的 ggplot2 包为每组的平均值添加行

如果你需要将数据按组进行可视化,并且想要在图中添加每组的平均值行,那么 ggplot2 包是个不错的选择。在该包中,你可以使用 stat_summary() 函数来计算每组的平均值,并在图中添加平均值行。

下面是一个简单的 ggplot2 代码示例,演示如何为每组添加平均值行:

library(ggplot2)

# 创建一个示例数据集
data <- data.frame(
  group = rep(c("A", "B"), each = 10),
  value = rnorm(20)
)

# 使用 ggplot2 创建一个基本图形
ggplot(data, aes(x = group, y = value)) +
  geom_boxplot() +
  geom_hline(
    aes(yintercept = mean(value)),
    linetype = "dashed",
    color = "red",
    size = 1
  ) +
  stat_summary(
    aes(group = group),
    fun = mean, 
    geom = "line",
    size = 1,
    color = "blue",
    position = position_dodge(width = 0.75)
  ) +
  labs(title = "每组平均值", x = "组别", y = "数值")

上述代码将创建一个基本的箱型图,其中 geom_hline() 用于添加红色虚线,表示所有数据点的平均值行。同时,stat_summary() 函数计算每个组的平均值,并在所有箱体中添加蓝色的线来表示每个组的平均值。

这是返回markdown格式后的代码片段:

```r
library(ggplot2)

# 创建一个示例数据集
data <- data.frame(
  group = rep(c("A", "B"), each = 10),
  value = rnorm(20)
)

# 使用 ggplot2 创建一个基本图形
ggplot(data, aes(x = group, y = value)) +
  geom_boxplot() +
  geom_hline(
    aes(yintercept = mean(value)),
    linetype = "dashed",
    color = "red",
    size = 1
  ) +
  stat_summary(
    aes(group = group),
    fun = mean, 
    geom = "line",
    size = 1,
    color = "blue",
    position = position_dodge(width = 0.75)
  ) +
  labs(title = "每组平均值", x = "组别", y = "数值")