The insert_right, insert_top etc will return aplot class (eg. p ), which is composed of multiple subplots. They can be extracted using p$plotlist[[1]] etc. And the theme, scale and others of subplot can be adjusted using p$plotlist[[1]] <- p$plotlist[[1]] + xxx. Whether need to define operators acting on this class, then users can use p[[1]] to extract the subplot?