Scatterplot con histogramas marginales en ggplot2

Hay una forma de crear diagramas de dispersión con histogramas marginales como en el ejemplo a continuación enggplot2? En Matlab es lascatterhist() funcion y existen equivalentes para R también. Sin embargo, no lo he visto para ggplot2.

He intentado crear gráficos únicos, pero no sé cómo organizarlos correctamente.

 require(ggplot2)
 x<-rnorm(300)
 y<-rt(300,df=2)
 xy<-data.frame(x,y)
     xhist <- qplot(x, geom="histogram") + scale_x_continuous(limits=c(min(x),max(x))) + opts(axis.text.x = theme_blank(), axis.title.x=theme_blank(), axis.ticks = theme_blank(), aspect.ratio = 5/16, axis.text.y = theme_blank(), axis.title.y=theme_blank(), background.colour="white")
     yhist <- qplot(y, geom="histogram") + coord_flip() + opts(background.fill = "white", background.color ="black")

     yhist <- yhist + scale_x_continuous(limits=c(min(x),max(x))) + opts(axis.text.x = theme_blank(), axis.title.x=theme_blank(), axis.ticks = theme_blank(), aspect.ratio = 16/5, axis.text.y = theme_blank(), axis.title.y=theme_blank() )


     scatter <- qplot(x,y, data=xy)  + scale_x_continuous(limits=c(min(x),max(x))) + scale_y_continuous(limits=c(min(y),max(y)))
none <- qplot(x,y, data=xy) + geom_blank()

y organizarlos con la función publicadaaqu. Pero para resumir: ¿hay alguna forma de crear estos gráficos?

Respuestas a la pregunta(18)

Su respuesta a la pregunta