У меня есть парный график, как показано ниже. Я использовал эти две функции ниже, чтобы сгенерировать этот вид графика.
Теперь я хочу поставить solid (не плотность) цвета вместо значений, основанных на их значимости (чем значительнее, тем насыщеннее цвет) , Ваша помощь будет оценена.
cor_fun <- function(data, mapping, method="pearson", ndp=2, sz=5, stars=TRUE){
x <- eval_data_col(data, mapping$x)
y <- eval_data_col(data, mapping$y)
corr <- cor.test(x, y, method=method)
est <- corr$estimate
lb.size <- sz #to size the correlation values based on their significancy replace 'sz' with 'sz*abs(est)'
if(stars){
stars <- c("***", "**", "*", "")[findInterval(corr$p.value, c(0, 0.001, 0.01, 0.05, 1))]
lbl <- paste0(round(est, ndp), stars)
}else{
lbl <- round(est, ndp)
}
ggplot(data=data, mapping=mapping) +
annotate("text", x=mean(x, na.rm=TRUE), y=mean(y, na.rm=TRUE), label=lbl, size=lb.size)+
theme(panel.grid = element_blank())
}
и
my_fn <- function(data, mapping){
p <- ggplot(data = data, mapping = mapping) +
stat_density2d(aes(fill=..density..), geom="tile", contour = FALSE) +
scale_fill_gradientn(colours = colfunc(100))
p
}
![enter image description here](https://i.stack.imgur.com/B4tGz.png)