title: Recover data from matplotlib scatter plot
body: <p>From a matplotlib scatter plot, I'm trying the recover the point data. Consider</p>
  
  <pre class="lang-py prettyprint-override"><code>from matplotlib import pyplot as plt
  import numpy as np
  fig = plt.figure()
  x = np.linspace(0.0, 1.0, 5)
  y = np.linspace(0.0, 1.0, 5)
  plt.scatter(x, y)
  
  ax = fig.get_children()[1]
  pc = ax.get_children()[2]
  for path in pc.get_paths():
      print
      print('path:')
      print(path)
      print
      print('segments:')
      for vert, code in path.iter_segments():
          print(code, vert)
  
  plt.show()
  </code></pre>
  
  <p>This yields</p>
  
  <pre><code>path:
  Path(array([[ 0.        , -0.5       ],
         [ 0.13260155, -0.5       ],
         [ 0.25978994, -0.44731685],
         [ 0.35355339, -0.35355339],
         [ 0.44731685, -0.25978994],
         [ 0.5       , -0.13260155],
         [ 0.5       ,  0.        ],
         [ 0.5       ,  0.13260155],
         [ 0.44731685,  0.25978994],
         [ 0.35355339,  0.35355339],
         [ 0.25978994,  0.44731685],
         [ 0.13260155,  0.5       ],
         [ 0.        ,  0.5       ],
         [-0.13260155,  0.5       ],
         [-0.25978994,  0.44731685],
         [-0.35355339,  0.35355339],
         [-0.44731685,  0.25978994],
         [-0.5       ,  0.13260155],
         [-0.5       ,  0.        ],
         [-0.5       , -0.13260155],
         [-0.44731685, -0.25978994],
         [-0.35355339, -0.35355339],
         [-0.25978994, -0.44731685],
         [-0.13260155, -0.5       ],
         [ 0.        , -0.5       ],
         [ 0.        , -0.5       ]]), array([ 1,  4,  4,  4,  4,  4,  4,  4,  4,
  4,  4,  4,  4,  4,  4,  4,  4,
          4,  4,  4,  4,  4,  4,  4,  4, 79], dtype=uint8))
  
  segments:
  (1, array([ 0. , -0.5]))
  (4, array([ 0.13260155, -0.5       ,  0.25978994, -0.44731685,  0.35355339,
         -0.35355339]))
  (4, array([ 0.44731685, -0.25978994,  0.5       , -0.13260155,  0.5       ,  0.
  ]))
  (4, array([ 0.5       ,  0.13260155,  0.44731685,  0.25978994,  0.35355339,
          0.35355339]))
  (4, array([ 0.25978994,  0.44731685,  0.13260155,  0.5       ,  0.        ,
          0.5       ]))
  (4, array([-0.13260155,  0.5       , -0.25978994,  0.44731685, -0.35355339,
          0.35355339]))
  (4, array([-0.44731685,  0.25978994, -0.5       ,  0.13260155, -0.5       ,  0.
  ]))
  (4, array([-0.5       , -0.13260155, -0.44731685, -0.25978994, -0.35355339,
         -0.35355339]))
  (4, array([-0.25978994, -0.44731685, -0.13260155, -0.5       ,  0.        ,
         -0.5       ]))
  (79, array([ 0. , -0.5]))
  /usr/local/lib/python2.7/dist-packages/matplotlib/collections.py:590:
  FutureWarning: elementwise comparison failed; returning scalar instead, but in
  the future will perform elementwise comparison
    if self._edgecolors == str('face'):
  </code></pre>
  
  <p>but I don't see any of that data correlate with the actual scatter input data. Perhaps it's not the <code>ax.get_children()[2]</code> path collection I need to look at?</p>