title: R: ggplot2 legend disappears when changing colour scheme
body: <p>Inspired by <a href="http://rpsychologist.com/working-with-shapefiles-projections-and-world-maps-in-ggplot" rel="nofollow noreferrer">this</a> post, I tried plotting a world map using Robinson projection and adding coloured dots to the map. 
  Reprojecting the map and points works fine, but, for some reason I don't understand, I can't change the colour scheme of the dots and keep the legend. I've tried the following:</p>
  
  <p>First I got shape files here: <a href="http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/110m/physical/ne_110m_land.zip" rel="nofollow noreferrer">land</a> and <a href="http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/110m/physical/ne_110m_graticules_all.zip" rel="nofollow noreferrer">graticules</a></p>
  
  <pre><code>library(rgdal)
  library(ggplot2)
  library(sp)
  library(yarrr)
  
  setwd('~/Documents/worldshapefiles') # this is where the shapefiles are
  
  # read the shapefile for the simple worldmap
  wmap &lt;- readOGR(dsn = 'ne_110m_land', layer = 'ne_110m_land')
  wmap_df &lt;- fortify(wmap)
  
  # get bounding box
  bbox &lt;- readOGR("ne_110m_graticules_all", layer="ne_110m_wgs84_bounding_box") # read bounding box
  bbox_df&lt;- fortify(bbox)
  
  site_locs &lt;- cbind.data.frame(x = c(-5, -3, -3, 58, -112), y = c(68, -37, 35, 19, -4), ocean = c('NAT', 'IND', 'MDX', 'SAT', 'PAC'))
  
  coordinates(site_locs) &lt;- c("x", "y") # convert to spatialpointsdataframe
  proj4string(site_locs) &lt;- CRS("+proj=longlat + datum=WGS84")
  
  # reproject everything
  bbox_robin &lt;- spTransform(bbox, CRS("+proj=robin"))
  bbox_robin_df &lt;- fortify(bbox_robin)
  wmap_robin &lt;- spTransform(wmap, CRS("+proj=robin"))
  wmap_df_robin &lt;- fortify(wmap_robin)
  site_locs_robin &lt;- spTransform(site_locs, CRS('+proj=robin'))
  site_locs_robin_df &lt;- as.data.frame(site_locs_robin)
  
  col_pal &lt;- piratepal('espresso', length.out = 5)
  
  # plot
  ggplot(bbox_robin_df, aes(long,lat)) + 
    geom_polygon(data = wmap_df_robin, aes(long,lat, group = group, fill = hole)) + 
    geom_point(data = site_locs_robin_df, aes(x, y, colour = ocean)) +
    coord_equal() +
    geom_polygon(linetype = 'solid', fill = NA, colour = 'black', size = 0.5) +
    scale_fill_manual(values=c("black", "white"), guide="none")
  </code></pre>
  
  <p>This works fine and produces the image below:
  <a href="https://i.stack.imgur.com/zTN1o.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/zTN1o.png" alt="enter image description here"></a></p>
  
  <p>However, when I try to change the colour scale:</p>
  
  <pre><code>ggplot(bbox_robin_df, aes(long,lat)) + 
    geom_polygon(data = wmap_df_robin, aes(long,lat, group = group, fill = hole)) + 
    geom_point(data = site_locs_robin_df, aes(x, y, colour = ocean)) +
    scale_colour_manual(values = col_pal) +
    coord_equal() +
    geom_polygon(linetype = 'solid', fill = NA, colour = 'black', size = 0.5) +
    scale_fill_manual(values=c("grey80", "white"), guide="none")
  </code></pre>
  
  <p>I get the following warning <code>Removed 5 rows containing missing values (geom_point).</code> and an empty plot.</p>
  
  <p>And when I change the colour scale like this:</p>
  
  <pre><code>ggplot(bbox_robin_df, aes(long,lat)) + 
    geom_polygon(data = wmap_df_robin, aes(long,lat, group = group, fill = hole)) + 
    geom_point(data = site_locs_robin_df, aes(x, y, colour = ocean), colour = col_pal) +
    scale_colour_manual(values = col_pal) +
    coord_equal() +
    geom_polygon(linetype = 'solid', fill = NA, colour = 'black', size = 0.5) +
    scale_fill_manual(values=c("grey80", "white"), guide="none")
  </code></pre>
  
  <p>the colours turn out fine (as specified in col_pal), but I lose the legend.
  <a href="https://i.stack.imgur.com/j7wyf.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/j7wyf.png" alt="enter image description here"></a></p>
  
  <p>Any ideas how to solve this? Or alternative approaches?</p>
  
  <p>In reality I also have more points, some of which overlap and I'd like to fix the order in which they are plotted (e.g. SAT on top of IND). How do I do this?</p>