Я хотел бы построить несколько нормальных распределений и тени площадь под каждый кривой справа от х = 6 и слева от значения симметричного ...R: Shadindg под несколько нормалей с ggplot
Я ve определил две функции, чтобы сделать это легко.
mifun <- function(x,mm,ss,alt) {
y <- alt+dnorm(x, mean = mm, sd = ss)
return(y)
}
mifun2 <- function(x,mm,ss,alt) {
y <- alt+dnorm(x, mean = mm, sd = ss)
y[x<6 & (2*mm-x)<6 ] <- NA
return(y)
}
ggplot(data.frame(x = c(-5, 11)), aes(x)) +
stat_function(fun = function(x) mifun(x,0,2,0), geom = "line") +
stat_function(fun = function(x) mifun2(x,0,2,0), geom = "area") +
stat_function(fun = function(x) mifun(x,2,2,-0.4), geom = "line") +
stat_function(fun = function(x) mifun2(x,2,2,-0.4), geom = "area") +
stat_function(fun = function(x) mifun(x,4,2,-0.8), geom = "line") +
stat_function(fun = function(x) mifun2(x,4,2,-0.8), geom = "area") +
stat_function(fun = function(x) mifun(x,6,2,-1.2), geom = "line") +
stat_function(fun = function(x) mifun2(x,6,2,-1.2), geom = "area") +theme_bw()
Это изображение без затенения:
Это изображение с затенением, он не работает, как ожидалось:
Если бы я только построить один нормальный я получаю это
Как вы можете видеть, тень появляется над нормалями, а не внизу.
PD: картинка для Марка Как вы можете видеть, что первые участки выровнены по правому пределу тени, а последние из них выравниваются по левому.
Вы можете рассмотреть вопрос о реструктуризации данных и кода для создания сложенных диаграмм линии – akash87
Или, может быть огранен, но я не знаю, как сделать это правильно, и я сначала подумал, это было бы проще. – skan
'geom_area' заполняет (или вверх) до 0, что и вызывает нечетное поведение, когда у вас есть местоположение« базы »кривой, сдвинутой от 0. –