R ggplot2: Как построить среднюю линию для 2 групп на полевых участках подгрупп? - PullRequest
1 голос
/ 02 апреля 2019

У меня 13 сайтов, которые классифицированы на 2 группы, и я составил график значений для каждого сайта, используя ggplot2. Они идентифицируются по группам на основе цвета заливки. Как я могу добавить среднюю линию, которая показывает среднее значение для двух групп, на полях сайта для каждой группы? (то есть одна средняя линия на полях для группы 1, одна линия на группе 2)

enter image description here

Я пытался использовать "stat_summary ()", но могу получить его только для построения линий для каждого среднего значения для отдельных сайтов, а не среднего для целых групп. (Отдельные средние линии показаны на изображении, а НЕ то, что я хочу)

ggplot(data, aes(y = value, x=site, fill=group)) +
  geom_boxplot() + labs(y="value")+
  theme_classic() +
  theme(legend.position="bottom", 
        axis.title.x=element_blank(),
        axis.ticks.x=element_blank(), 
        text=element_text(size=15)) +
  scale_fill_manual(values=c("#E69F00", "#56B4E9"), name="group", 
                    labels=c("1", "2")) +
  stat_summary(fun.y = mean, geom = "errorbar", 
               aes(ymax = ..y.., ymin = ..y.., group =factor(mgmt)),
               width = 0.75, linetype = "dashed")

Я ожидаю 2 средних линии, по одной для каждой группы, которые простираются через рамки сайта для каждой группы. Вместо этого я получаю среднюю строку для каждого поля сайта.

1 Ответ

0 голосов
/ 02 апреля 2019

Например, geom_hline даст вам горизонтальную линию по всему графику, а geom_segment может сделать более короткую линию ( прежняя , последняя ).

...