Я хотел бы нарисовать вертикальную линию на гистограмме, где медиана моих данных после фасетирования. Я хотел бы сделать это с stat_summary
, как показано ниже. Проблема с этим подходом состоит в том, что ось у не в правильном масштабе
Я думаю, это потому, что я называю ggplot(aes(x=data, y=data))
. Кажется немного странным делать гистограмму, но причина, по которой я это делаю, заключается в том, что для stat_summary
требуется ayestheti c. Есть ли способ, которым я мог бы построить медианы с помощью stat_summary
, но сохранить шкалу, полученную при вызове geom_histogram
? Я мог бы добавить ylim
, но проблема с этим подходом заключается в том, что я могу не знать, какой правый верхний предел является априори для новых данных, которые я могу увидеть.
Ниже приведен пример для генерации моего примера.
library(tidyverse)
#> Warning: package 'tibble' was built under R version 3.6.2
d = tribble(
~groupvar, ~data,
'a', rlnorm(10,2, 0.5),
'b', rlnorm(10,2, 0.5),
'c', rlnorm(10,5, 0.5)
) %>% unnest(c(data))
d %>%
ggplot(aes(x = data, y = data, group = groupvar))+
geom_histogram(aes(y = ..count..))+
facet_grid(~groupvar)+
stat_summary(aes(x=0, xintercept=stat(y)), fun = median, geom = 'vline')
#> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
![](https://i.imgur.com/3BFnQ9Q.png)
Создано в 2020-04-01 пакетом Представить (v0.3.0)