Пакет R ggpmisc: Помещение шляпы на y в уравнении регрессии

Я использую R пакет ggpmisc, Вам интересно, как поставить шляпу на y в уравнении регрессии или как получить пользовательский ответ и пояснительное имя переменной в уравнении регрессии на графике.

library(ggplot2)
library(ggpmisc)

df <- data.frame(x1 = c(1:100))
set.seed(12345)
df$y1 <- 2 + 3 * df$x1 + rnorm(100, sd = 40)

p <- ggplot(data = df, aes(x = x1, y = y1)) +
  geom_smooth(method = "lm", se=FALSE, color="black", formula = y ~ x) +
  stat_poly_eq(formula = y ~ x, 
               aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~")), 
               parse = TRUE) +         
  geom_point()
p

введите описание изображения здесь

1 ответ

Решение

Я бы выключил значение по умолчанию для y это вклеить и построить свою собственную формулу. Например

ggplot(data = df, aes(x = x1, y = y1)) +
  geom_smooth(method = "lm", se=FALSE, color="black", formula = y ~ x) +
  stat_poly_eq(formula = y ~ x, eq.with.lhs=FALSE,
      aes(label = paste("hat(italic(y))","~`=`~",..eq.label..,"~~~", ..rr.label.., sep = "")), 
      parse = TRUE) +         
  geom_point()

Мы используем eq.with.lhs=FALSE отключить автоматическое включение y= а потом мы paste() hat(y) вперед (со знаком равенства). Обратите внимание, что форматирование происходит от ?plotmath страница справки.

введите описание изображения здесь

Другие вопросы по тегам