The code allowed me to have r and p values in the same plot, but as you can see, it's quite busy. I'd like to improve readability - initially, by printing only the upper or lower off diagonal, but I'm open to options/suggestions. Being relatively new to R I'm not sure how to restrict what is shown. Any help would be greatly appreciated.
I can offer a few thoughts, but I don't think this is a pure ggplot operation. The intuition I have would be to replace r with NA when rowvars <= colvars and p vice versa.
Another option is using something like GGally (https://ggobi.github.io/ggally/#ggallyggpairs), and you can define your own plotting functions to be used on the upper / lower halves and the diagonal.