Как добавить линию в матрицу графика корреляции GGally

Следующий сюжет

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

Генерируется с помощью следующего кода:

library(GGally)
dat <- read.csv("http://www.ats.ucla.edu/stat/data/tobit.csv")
ggpairs(dat[, c("read", "math", "apt")])

Как я могу добавить линию корреляции для каждого графика рассеяния выше?


person neversaint    schedule 15.06.2015    source источник
comment
Вы спрашиваете о линии корреляции или линии соответствия?   -  person user227710    schedule 16.06.2015
comment
@user227710 user227710: линия подходит.   -  person neversaint    schedule 16.06.2015
comment
Я разместил ответ. Надеюсь, что это работает.   -  person user227710    schedule 16.06.2015


Ответы (2)


Что-то вроде этого?

ggpairs(dat[, c("read", "math", "apt")],lower = list(continuous = "smooth", params = c(method = "loess", fill = "blue"))

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

person user227710    schedule 15.06.2015
comment
Спасибо, как я могу сделать линию «красной»? - person neversaint; 16.06.2015
comment
Я понятия не имею, как это сделать. - person user227710; 16.06.2015

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

library(GGally)
dat <- ggplot2::diamonds[1:1000, c("x", "y", "z")]  # Example data

# Customize your scatterplots as you wish here:
lowerfun <- function(data, mapping) {
  ggplot(data = data, mapping = mapping)+ 
    geom_point(alpha = .25) + 
    geom_smooth(method = "loess", formula = y ~ x, 
                fill = "blue", color = "red", size = 0.5)
}

# Plot the scatterplot matrix
ggpairs(dat, lower = list(continuous = wrap(lowerfun)))

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

person HBat    schedule 05.04.2021