My goal is to make several plots with ggplot and combine them into a single plot using grid.arrange in the gridExtra package.
I'm having an issue in that the legends in my ggplot (while appropriately sized for a single plot) are too large when I try to place the plots side by side with grid.arrange. The resulting combined plots reduce the x-axis but keep the legend original size. So the result is a very skinny plot, next to an needlessly large legend. So I'd like to reduce the size of the legend in each plot, enough so that I can place my plots side by side. Or possible shrink them enough to bring them inside the actual plot without being to overbearing.
V1<-rnorm(10)
V2<-rnorm(10)
V3<-rnorm(10)
DF<-data.frame(V1,V2,V3)
ggplot(DF,aes(x=V1,y=V2,size=V3))+
geom_point(fill='red',shape=21)+
theme_bw()+
scale_size(range=c(5,20))
This plot command produces a standard legend size to the right of the plot.

I've tried using different theme elements:
+theme(legend.key.size = unit(0.5, "cm")
or
+theme(legend.key.width=unit(0.3,"cm"),legend.key.height=unit(0.3,"cm"),legend.position = c(0.7, 0.8))
And while I can make the legend larger using these theme commands, I can't make the legend any smaller than the default legend. So is there any way to shrink the legend beyond the default size?
I can also change the default size of my pdf device to make it wider and accommodate the large legends , but I'd like to work with a standard pdf size for now.

