I have some lists of plots with different length, length = 2,3,4,5, 10, 20 ... and I usually use par(mfrow = c(x,y)) to alter my display to see all the plots. For example, if the list contains 4 plots, then I will make a 2x2 grid (par(mfrow = c(2,2)); if the list contains 3 plots, then I will make a 1x3 grid (par(mfrow = c(1,3)).
My question is: Is there a way that the display can split up nicely without me manually input the x and y in par(mfrow=c(x,y), but instead the machine can find out x and y based on the length of the given list?
Extra: and the title font size can change accordingly?