title: Matplotlib: Annotate plot with vertical arrow and centered text
body: <p>I would like to annotate a plot with a vertical arrow, and then center the annotation on the tip of the vertical arrow:
  <a href="https://i.stack.imgur.com/sch2X.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/sch2X.png" alt="enter image description here"></a></p>
  
  <p>Here is the code that I use:</p>
  
  <pre><code>import matplotlib.pyplot as plt
  plt.annotate(
  # Label and coordinate
  'Help here!', xy=(8, 0.4),xytext=(7.05, 0.6) ,
  # Custom arrow
  arrowprops=dict(arrowstyle='-&gt;',lw=1)
  )
  </code></pre>
  
  <p>The xytext coordinates indicate the coordinates at which the text starts. If they are not correctly set, the arros stops being vertical here. For now in order to make the arrow vertical, I need to manually find  the correct x coordinate for the variable xytext  (for this text it appears to be 7.05). But can I just find a way to indicate what I want as a command? </p>