R语言 使用ggplot2中的geom_smooth()进行线性回归,x轴为分类变量

q1qsirdb  于 2023-11-14  发布在  其他
关注(0)|答案(1)|浏览(221)

我尝试绘制一条线性回归线到一个散点图,x轴上有一个有序分类变量。但是,我的代码没有绘制任何线(也没有警告或错误)。是否可以为分类x轴绘制回归线?也许我必须指定group的水平顺序?显式设置水平没有帮助。

# libraries
library(ggplot2)

# dummy data
dat <- data.frame(group = as.factor(c(rep("A", 10), rep("B", 10))),
                  variable = c(rnorm(10, mean = 3), rnorm(10, mean = 12)))

# specify order of levels explicitly
dat$group <- factor(dat$group, levels = c("A", "B"))

# plot
ggplot(dat, aes(x = group, y = variable)) +
  geom_point() +
  geom_smooth(method = "lm")

字符串
输出量:


的数据

sd2nnvve

sd2nnvve1#

geom_smooth只能对连续变量进行平滑处理,并且会尝试为离散变量的每个水平创建平滑处理。当离散变量Map到x轴或y轴时,这通常不起作用。但是我们可以通过指定geom_smooth(aes(group = 1))来解决ggplot的默认行为,这将覆盖默认分组行为。

ggplot(dat, aes(x = group, y = variable)) +
  geom_point() +
  geom_smooth(aes(group = 1), method = "lm")

字符串


的数据

相关问题