Now, the above plot has some obvious shortcomings. The diagonal is pretty useless for starters, and it is often that these panels are used to plot the distributions of the individual variables. Using e.g.
geom_density()won’t work as it always start at 0, thus messing with the y-scale of each row. ggforce provides two new geoms tailored for the diagonal:
geom_autohistogram()which automatically positions itself inside the panel without affecting the y-scale. We’d still need to have this geom only in the diagonal, but
facet_matrix()provides exactly this sort of control
There are some interesting improvements in here.