title: matplotlib - randomly pick N points from 2D array, and plot spatial scatter plot
body: <p>I have plots like the following:
  <a href="https://i.stack.imgur.com/R34Px.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/R34Px.png" alt="enter image description here"></a></p>
  
  <p>Left Plot : original 100 * 100 numpy data</p>
  
  <p>Right Plot : What I want - randomly choose N data from the original data, and plot them on a surface plot</p>
  
  <p>How can I randomly choose N number of data from the left plot, and plot the chosen data on a scatter plot like the right plot? </p>
  
  <p>I used <code>ax.imshow(data)</code> to generate the surface plot on the left. <code>data</code> is a 2D numpy array.</p>