Adding arrows
Adding text boxes can help you to annotate a figure. However, to show a specific part of a picture, nothing beats the use of an arrow. In this recipe, we will show you how to add arrows on a figure.
How to do it...
matplotlib has a function to draw arrows with the pyplot.annotate()
function as shown in the following code snippet:
import numpy as np import matplotlib.pyplot as plt X = np.linspace(-4, 4, 1024) Y = .25 * (X + 4.) * (X + 1.) * (X - 2.) plt.annotate('Brackmard minimum', ha = 'center', va = 'bottom', xytext = (-1.5, 3.), xy = (0.75, -2.7), arrowprops = { 'facecolor' : 'black', 'shrink' : 0.05 }) plt.plot(X, Y) plt.show()
This script annotates a curve with text and an arrow, as shown in the following graph:
How it works...
The pyplot.annotate()
function shows text working on the same lines as pyplot.text()
. However, an arrow is also rendered. The text to be displayed is the first parameter. The xy
parameter specifies the arrow's destination. The xytext
parameter specifies...