如何修复: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