如何修复:geom_path:每组由一个观察组成。群体审美需要调整吗?


使用R时可能遇到的错误是:

 geom_path: Each group consists of only one observation. Do you need to adjust
the aesthetic group?

当您尝试使用ggplot2 创建折线图时,通常会出现此错误,但 x 轴变量是连接绘图点时可能导致问题的一个因素。

以下示例展示了如何在实践中纠正此错误。

如何重现错误

假设我们在 R 中有以下数据框,其中包含有关某种产品多年来的销售信息:

 #create data frame
df <- data. frame (year=factor(c(2017, 2018, 2019, 2020, 2021, 2022)),
                 sales=c(23, 30, 35, 41, 48, 44))

#view data frame
df

  year sales
1 2017 23
2 2018 30
3 2019 35
4 2020 41
5 2021 48
6 2022 44

现在假设我们尝试使用 ggplot2 创建折线图来可视化按年份的销售额:

 library (ggplot2)

#attempt to create line chart
ggplot(df, aes (year, sales)) +
  geom_point() +
  geom_line()

geom_path: Each group consists of only one observation. Do you need to adjust
the aesthetic group?

生成散点图而不是折线图,因为 x 轴变量(年份)是一个因素。

我们还收到geom_path错误消息。

如何修复错误

修复此错误的最简单方法是在aes()函数中指定group=1

 library (ggplot2)

#create line chart
ggplot(df, aes (year, sales, group= 1 )) +
  geom_point() +
  geom_line() 

请注意,折线图已创建,并且不会出现错误消息。

group=1修复此错误的原因是因为折线图需要对数据点进行分组,以便 ggplot2 知道要连接哪些点。

在这种情况下,我们希望连接图上的所有点,因此我们指定group=1

其他资源

以下教程解释了如何修复 R 中的其他常见错误:

如何修复 R:意外的字符串常量
如何修复 R:ExtractVars 中的模板公式无效
如何在 R 中修复:参数既不是数字也不是逻辑:返回 na

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注