Як додати середню лінію до графіка в 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)
xy
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 ))
Ми бачимо, що середня лінія була додана до графіка трохи вище значення 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