Как добавить среднюю линию на график в ggplot2

Как добавить среднюю линию на график в ggplot2

Вы можете использовать следующий базовый синтаксис, чтобы добавить строку, представляющую среднее значение на графике в ggplot2:

ggplot(df, aes(x=x, y=y)) +
 geom_point() +
 geom_hline(yintercept = mean(df$y, na. rm = TRUE ))

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: добавьте среднюю линию на график в ggplot2

Предположим, у нас есть следующий фрейм данных в R:

#create data frame
df <- data.frame(x=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12),
 y=c(2, 5, 6, 5, 7, 8, 10, 12, 10, 9, 11, 15))

#view head of data frame
head(df)

 x y
1 1 2
2 2 5
3 3 6
4 4 5
5 5 7
6 6 8

Мы можем использовать следующий код, чтобы создать точечную диаграмму x и y и добавить горизонтальную линию, которая представляет среднее значение y:

library (ggplot2)

#create scatter plot with average line to represent average y-value
ggplot(df, aes(x=x, y=y)) +
 geom_point() +
 geom_hline(yintercept = mean(df$y, na. rm = TRUE )) 
ggplot2 добавить среднюю линию

Мы видим, что средняя линия была добавлена к графику чуть выше значения y, равного 8.

Если мы вычислим среднее значение y, мы обнаружим, что оно равно 8,333:

#calculate average y-value
mean(df$y, na. rm = TRUE )

[1] 8.333333

Обратите внимание, что мы также можем использовать аргументы color , lty и lwd для указания цвета, типа линии и ширины средней линии соответственно:

library (ggplot2)

#create scatter plot with custom average line
ggplot(df, aes(x=x, y=y)) +
 geom_point() +
 geom_hline(yintercept = mean(df$y, na. rm = TRUE ), color='blue', lty='dashed', lwd= 2 ) 

Средняя линия теперь синяя, пунктирная и имеет ширину 2.

Полную онлайн-документацию по функции geom_hline() можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в ggplot2:

Как нарисовать линию тренда в ggplot2
Как настроить толщину линии в ggplot2
Как установить пределы оси в ggplot2

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.