我正在尝试制作一个具有两条回归线的ggplot图:一个低于中位数,另一个高于中位数,以描述年龄对样本的潜在影响。因此,我尝试了:geom_hline(aes(yintercept = median(df$y))我没有得到任何东西。我也可以有两个图形,一个有一条线,另一个有另一条线,并将它们合并,但我还没有成功。有什么帮助吗?亚西拉几何线(aes(y截距=中位数(df$y)预期在平均值上方有一条线
ubby3x7f1#
转到Marco以指出“年龄的影响”听起来像是年龄在x轴上。
在年龄低于或高于中位数的条件下,包括group美学。这将把数据分成两组。
group
df1 <- iris[1:2] names(df1) <- c("y", "age") library(ggplot2) ggplot(df1, aes(age, y, group = age < median(age))) + geom_point() + geom_vline(xintercept = median(df1$age)) + geom_smooth(method = lm, formula = y ~ x, se = FALSE)
创建于2023年3月12日,使用reprex v2.0.2
von4xj4u2#
“年龄的影响”听起来像是年龄在x轴上,下面是x轴中位数两侧的两条回归线的最小示例,其中tidyverse:
tidyverse
library(tidyverse) data(mtcars) mtcars %>% ggplot(aes(x = mpg, y = qsec)) + geom_point() + geom_smooth(data = filter(mtcars, mpg <= median(mpg)), method = "lm", size = 1.2, se=F) + geom_smooth(data = filter(mtcars, mpg > median(mpg)), method = "lm", size = 1.2, se=F) + geom_vline(xintercept=median(mtcars$mpg))
2条答案
按热度按时间ubby3x7f1#
信贷
转到Marco以指出
“年龄的影响”听起来像是年龄在x轴上。
答案
在年龄低于或高于中位数的条件下,包括
group
美学。这将把数据分成两组。创建于2023年3月12日,使用reprex v2.0.2
von4xj4u2#
“年龄的影响”听起来像是年龄在x轴上,下面是x轴中位数两侧的两条回归线的最小示例,其中
tidyverse
: