ggplot2 рисует отдельные эллипсы, но цвет по группе

У меня есть данные, которые состоят из нескольких точек данных для ряда людей, и каждый из этих людей взят с определенного места исследования. Я хотел бы построить все точки, нарисовать 95% эллипсов для каждого человека, а затем раскрасить эллипсы по месту исследования. К сожалению, кажется, что когда я указываю цвет по сайту, эллипс рисуется для агрегированной группы.

Данные выглядят так:

dat1 <- data.frame(X=rnorm(21),Y=rnorm(21),indiv_id=rep(c(1,2,3),7),group_id=rep(1,21))
dat2 <- data.frame(X=rnorm(21,5),Y=rnorm(21,5),indiv_id=rep(c(4,5,6),7),group_id=rep(2,21))
dat3 <- data.frame(X=rnorm(21,10),Y=rnorm(21,10),indiv_id=rep(c(7,8,9),7),group_id=rep(3,21))
ggdat <- rbind(dat1,dat2,dat3)
ggdat$indiv_id <- as.factor(ggdat$indiv_id)
ggdat$group_id <- as.factor(ggdat$group_id)

Если я рисую эллипсы индивидуально, я могу видеть все эллипсы отдельно:

ggplot(ggdat) +
  geom_point(aes(x=X, y=Y,color=indiv_id),size=1) + # 
  stat_ellipse(aes(x=X, y=Y,color=indiv_id),type = "norm")

но если я рисую группой, то получается только один эллипс на группу:

ggplot(ggdat) +
  geom_point(aes(x=X, y=Y,color=indiv_id),size=1) + # 
  stat_ellipse(aes(x=X, y=Y,color=group_id),type = "norm") + #, linetype = 2
  theme(legend.position='none')

Как я могу нарисовать все 9 эллипсов, но раскрасить их по группам? Спасибо за помощь!

Ответы на вопрос(1)

Ваш ответ на вопрос