title: Understanding Matplotlib's quiver plotting
body: <p>I'm trying to understand how <code>plt.quiver()</code> works. My issue is as follows:</p>
  
  <p>I plot a simple vector <code>(1,1)</code> as such:</p>
  
  <pre><code>import numpy as np
  import matplotlib.pyplot as plt
  
  fig = plt.figure(2)
  ax = fig.add_subplot(111)
  ax.quiver(0,0, 1, 1, units = 'xy', scale = 1)
  plt.xticks(range(-5,6))
  plt.yticks(range(-5,6))
  plt.grid()
  </code></pre>
  
  <p>I would expect the arrow to go from <code>(0,0)</code> to <code>(1,1)</code>, but the result is slightly off from that:<a href="https://i.stack.imgur.com/F7y37.png" rel="noreferrer"><img src="https://i.stack.imgur.com/F7y37.png" alt="vector 1,1"></a></p>
  
  <p>Similarly, I try and plot an arrow for vector <code>(0,3)</code> and the resulting arrow seems to be for vector <code>(0,3.5)</code>...</p>
  
  <p><a href="https://i.stack.imgur.com/VT6UO.png" rel="noreferrer"><img src="https://i.stack.imgur.com/VT6UO.png" alt="enter image description here"></a></p>
  
  <p>My assumption is that this has something to do with the <em>kwargs</em>  <code>'units'</code>, <code>'scale'</code>, <code>'angles'</code>, &amp; <code>'scale_units'</code>. I've read the docs on them but don't fully understand how they work. A sunday school explanation would be greatly appreciated!</p>