title: How to add an external legend to ggpairs()?
body: <p>I am plotting a scatterplot matrix using <code>ggpairs</code>. I am using the following code:</p>
  
  <pre><code># Load required packages
  require(GGally)
  
  # Load datasets
  data(state)
  df &lt;- data.frame(state.x77,
                   State = state.name,
                   Abbrev = state.abb,
                   Region = state.region,
                   Division = state.division
  ) 
  # Create scatterplot matrix
  p &lt;- ggpairs(df, 
               # Columns to include in the matrix
               columns = c(3,5,6,7),
  
               # What to include above diagonal
               # list(continuous = "points") to mirror
               # "blank" to turn off
               upper = "blank",
               legends=T,
  
               # What to include below diagonal
               lower = list(continuous = "points"),
  
               # What to include in the diagonal
               diag = list(continuous = "density"),
  
               # How to label inner plots
               # internal, none, show
               axisLabels = "none",
  
               # Other aes() parameters
               colour = "Region",
               title = "State Scatterplot Matrix"
  ) 
  
  # Show the plot
  print(p)
  </code></pre>
  
  <p>and I get the following plot:</p>
  
  <p><img src="https://i.stack.imgur.com/CYNfK.png" alt="enter image description here"></p>
  
  <p>Now, one can easily see that I am getting legends for every plot in the matrix. I would like to have ONLY ONE universal legend for the whole plot. How do I do that?
  Any help would be much appreciated.</p>