Можно ли использовать ggMarginal на графике, объединяющем точки и линии плотности?

#r #ggplot2

#r #ggplot2

Вопрос:

Я пытался добавить маргинальные графики к моему текущему графику, который отображает некоторые данные с линиями плотности и некоторые данные с точками. Однако ggMarginal, похоже, собирает только данные, принадлежащие первому слою или первому подмножеству, которое вызывается в geom_point. У кого-нибудь есть идея, как все-таки достичь моей цели с помощью ggMarignal?

Я действительно сталкивался с обходными путями с cowplot, однако в моем случае это потребовало бы много дополнительной работы, поскольку я создаю множество фигур разного размера (для которых потребовались бы все специальные настройки для идеального выравнивания)

Спасибо за любые идеи!

Код для воспроизведения текущего вывода:

 data=iris
PC_Data=prcomp(data[,1:4])
data2Plot=as.data.frame(cbind(PC_Data$x,Species=data$Species))
data2Plot$Species=as.factor(data2Plot$Species)
p<-ggplot(data2Plot,aes(x=PC1,y=PC2,color=Species,fill=Species)) 
  stat_density2d(data=subset(data2Plot, Species != "3"),geom="polygon",size=0.2,alpha=0.1)  
  geom_point(data=subset(data2Plot, Species == "3"),size=1) theme(legend.position = "none")
ggMarginal(p,type="density",groupColour = T,groupFill = T)
 

Текущий выход

Вывод:

Требуемый результат: Требуемый результат: