R, ggplot2: creating a single legend in a bubble chart with positive and negative values
<p>I want to create a single legend for a bubble chart with positive and negative values like in plot <a href="https://i.stack.imgur.com/iCeYR.png" rel="nofollow noreferrer">below</a>, generated using sp::bubble().</p>

<p><img src="https://i.stack.imgur.com/iCeYR.png" width="400" height="400" /></p>

<p>But, for various reasons I want to duplicate this in ggplot2. The closest I have gotten is to generate a single legend with scaled symbols, but the actual bubbles themselves are'nt scaled.</p>

<p><img src="https://i.stack.imgur.com/WHcXJ.png" width="651" height="300" /></p>

<p>The above plot was created using the code below</p>

<pre><code># create data frame
x=sample(seq(1,50),50,T)
y=sample(seq(1,50),50,T)
plot_dat=data.frame(x=x,y=y,value=rnorm(50,0,25))

# plot
library(ggplot2)
ggplot(data=plot_dat, aes(x=x, y=y,colour=factor(sign(value)), size=value)) +
geom_point() +  
scale_size(breaks = c(-40,-30,-20,-10,0,10,20,30,40,50), range = c(0.5,4)) +
scale_colour_manual(values = c("orange", "blue"), guide=F) +
guides(size = guide_legend(override.aes = list(colour = list("orange","orange","orange","orange","blue","blue","blue","blue","blue","blue"),size=c(3,2.5,2,1,0.5,1,2,2.5,3,4)))) 
</code></pre>