gpt4 book ai didi

r - 在两个 ggplot 直方图上显示均值和中值

转载 作者:行者123 更新时间:2023-12-02 09:04:27 24 4
gpt4 key购买 nike

我是 stackoverflow 的新用户,目前无法在原始帖子上发表评论来提问。我遇到了以前的 stackoverflow 答案 ( https://stackoverflow.com/a/34045068/11799491 ),我想知道如何在此处向该图添加两条垂直线(组的平均值和组的中值)。

enter image description here

我的尝试:我不知道如何在组变量“type”中添加

geom_vline(aes(xintercept = mean(diff), ), color="black") + 
geom_vline(aes(xintercept = median(diff), ), color="red")

最佳答案

有几种不同的方法可以做到这一点,但我喜欢创建一个单独的汇总数据框,然后将其传递到 geom_vline 调用中。这使您可以分析结果并轻松添加多行,这些行会自动按类型排序和着色:

library(tidyverse) 

df <-
tibble(
x = rnorm(40),
category = rep(c(0, 1), each = 20)
)

df_stats <-
df %>%
group_by(category) %>%
summarize(
mean = mean(x),
median = median(x)
) %>%
gather(key = key, value = value, mean:median)

df %>%
ggplot(aes(x = x)) +
geom_histogram(bins = 20) +
facet_wrap(~ category) +
geom_vline(data = df_stats, aes(xintercept = value, color = key))

enter image description here

关于r - 在两个 ggplot 直方图上显示均值和中值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60156897/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com