title: Basemap scatterplot with zorder determined by size
body: <p>I'm looking to make a basemap with a scatterplot on top with the zorder of the points determined by the size of each individual point, so that no point ends up totally covered by another. (The ideal end result would look like a bullseye.) </p>
  
  <p>Let's say I have the following code:</p>
  
  <pre><code>Ca_data = array([0.088, 0.094, 0.097, 0.126, 0.112, 0.092, 0.076, 0.105])
  SO4_data = array([0.109, 0.001, 0.001, 0.007, 0.214, 0.005, 0.008, 0.559])
  longitude = linspace(-101, -100, 8)
  latitude = linspace(34.5, 35, 8)
  
  m=Basemap(llcrnrlon=-101,llcrnrlat=34.5,urcrnrlon=-100,urcrnrlat=35,resolution='c', epsg=4326)
  m.arcgisimage(server='http://server.arcgisonline.com/ArcGIS', service='ESRI_Imagery_World_2D', xpixels=1500, ypixels=1500, zorder=1)
  m.scatter(longitude, latitude, latlon=True, s=6000*Ca_data,c='r',marker="o",label='Ca')
  m.scatter(longitude, latitude, latlon=True, s=6000*SO4_data,c='b',marker="o",label='SO4')
  plt.show()
  </code></pre>
  
  <p>As it is, anywhere SO4 is larger than Ca, I would only see SO4. I've considered going in and adding a zorder to each line, but I don't think that would work well since I have several more elements to add in with the same issues.  Any ideas?</p>