Okay, there is probably no simpler alternative than using insets with manual bboxes for that. And the reason is most people would consider that poor visualization. Compared to
plot(
plot(...),
plot(...),
plot(...);
layout=(3,1)
)
the triple-axis plot is just harder to read.
But if you’re using it internally where you can learn to read it once and will then use the same layout many times I guess there is no issue with it if you get it to work.