Я пытаюсь создать диаграмму рассеяния с несколькими панелями для каждой переменной. Я хотел бы изменить порядок панелей на основе их линии или коэффициентов корреляции (например, с отрицательного на положительное).
Итак, в этом примере ниже я бы хотел, чтобы в первой строке были включены графики am
, drat
, vs
, а в последнем графике - wt
library(tidyr)
library(ggplot2)
corr_eqn = function(x, y, digits = 2) {
corr_coef = round(cor(x, y), digits = digits)
paste("italix(r) == ", corr_coef)
}
mtcars_gath <- mtcars %>%
gather(-mpg, key = "var", value = "value")
labels = data.frame(x = 300, y = 10, label = corr_eqn(mtcars_gath$value, mtcars_gath$mpg))
mtcars_plot = mtcars %>%
gather(-mpg, key = "var", value = "value") %>%
ggplot(aes(x = value, y = mpg)) +
geom_point() +
facet_wrap(~ var) +
theme_bw()+
geom_smooth(method = "lm", se = FALSE, color = "black", fullrange = TRUE)+
geom_text(data = labels, aes(x = x, y = y, label = label), parse = TRUE)
mtcars_plot
Кроме того, я не смог включить коэффициенты корреляции для каждого из графиков (как видно в этом примере).
Любой намек высоко ценится:)