Следуя ответу на мой предыдущий вопрос , допустим, что я строю кривые плотности по группам с ggplot
, и я хочу получить соответствующую нормальную кривую для каждой группы (с соответствующими средствами и Стандартное отклонение).
Сначала я попробовал
library(ggplot2)
mtcars$vs <- as.factor(mtcars$vs)
ggplot(mtcars,aes(x=mpg, fill = vs, colour = vs)) + geom_density(alpha = 0.1) +
stat_function(fun = dnorm, args = list(mean = mean(mtcars$mpg), sd = sd(mtcars$mpg)))
но он выдает уникальную нормальную кривую. Затем я обнаружил в этот вопрос (ответ которого я не вижу, как мне помочь), что stat_function
понимает group
эстетику, поэтому я попытался
ggplot(mtcars,aes(x=mpg, fill = vs, colour = vs)) + geom_density(alpha = 0.1) +
stat_function(aes(group = vs), fun = dnorm, args = list(mean = mean(mtcars$mpg), sd = sd(mtcars$mpg)))
но сюжет не меняется. Так как же я могу сказать stat_function
, что я хочу, чтобы аргументы принимались для каждой vs
-группы? Я также ожидаю, что цвет каждой из этих нормальных кривых будет таким же, как (или связан с) цвет кривой mpg
той же группы.
Я тоже пробовал с
library(dplyr)
ggplot(mtcars %>% group_by(vs),...
но это не имело никакого эффекта.
Спасибо!