Plot combination and rotation using CairoMakie and AlgebraOfGraphics

Hi all,
I want to know how to achieve plotting as shown below:


currently, I could only achieved plotting as shown below using the following code:
current

using AlgebraOfGraphics
using Distributions
using DataFrames
using CairoMakie

dx = Normal(20,1)
dy = Normal(25,1)
x = rand(dx, 50)
y = rand(dy, 50)

dn2 = DataFrame(x = x, y = y)

p1 = data(dn2) * mapping([:x, :y] .=> "variables") *
    AlgebraOfGraphics.density() * 
    mapping(color = dims(1) => renamer(["x", "y"]))
draw(p1,axis = (width = 200, height = 200))

You can see that I need to first rotate the axis and then combine multiple figures, and I want to know if it is currently available using CairoMakie and AlgebraOfGraphics. Thanks in advance for help!

After this upcoming refactor Explicit aesthetics / scales by jkrumbiegel · Pull Request #505 · MakieOrg/AlgebraOfGraphics.jl · GitHub this code will work, currently the flipped histogram is not really supported with correct axis labels:

let 
    group = rand(1:8, 1000)
    x = randn.() .+ group
    df = (; x, group)
    spec = data(df) *
        mapping(:x, col = :group => nonnumeric) *
        AoG.histogram(bins = 80) *
        visual(direction = :x)
    with_theme(theme_minimal()) do
        draw(spec)
    end
end

hist | Makie

But I have a question on it.