Matplotlib is a library in Python and it is numerical – mathematical extension for NumPy library. Pyplot is a state-based interface to a Matplotlib module which provides a MATLAB-like interface.
matplotlib.pyplot.annotate() Function
The annotate() function in pyplot module of matplotlib library is used to annotate the point xy with text s.
Syntax: angle_spectrum(x, Fs=2, Fc=0, window=mlab.window_hanning, pad_to=None, sides=’default’, **kwargs)
Parameters: This method accept the following parameters that are described below:
- s: This parameter is the text of the annotation.
- xy: This parameter is the point (x, y) to annotate.
- xytext: This parameter is an optional parameter. It is The position (x, y) to place the text at.
- xycoords: This parameter is also an optional parameter and contains the string value.
- textcoords: This parameter contains the string value.Coordinate system that xytext is given, which may be different than the coordinate system used for xy
- arrowprops : This parameter is also an optional parameter and contains dict type.Its default value is None.
- annotation_clip : This parameter is also an optional parameter and contains boolean value.Its default value is None which behaves as True.
Returns: This method returns the annotation.
Below examples illustrate the matplotlib.pyplot.annotate() function in matplotlib.pyplot:
Example #1:
# Implementation of matplotlib.pyplot.annotate()# function import matplotlib.pyplot as pltimport numpy as np fig, geeeks = plt.subplots() t = np.arange(0.0, 5.0, 0.001)s = np.cos(3 * np.pi * t)line = geeeks.plot(t, s, lw = 2) # Annotationgeeeks.annotate('Local Max', xy =(3.3, 1), xytext =(3, 1.8), arrowprops = dict(facecolor ='green', shrink = 0.05),) geeeks.set_ylim(-2, 2) # Plot the Annotation in the graphplt.show() |
Output:
Example #2:
# Implementation of matplotlib.pyplot.annotate()# function import numpy as npimport matplotlib.pyplot as plt x = np.arange(0, 10, 0.005)y = np.exp(-x / 3.) * np.sin(3 * np.pi * x) fig, ax = plt.subplots()ax.plot(x, y)ax.set_xlim(0, 10)ax.set_ylim(-1, 1) # Setting up the parametersxdata, ydata = 5, 0xdisplay, ydisplay = ax.transData.transform((xdata, ydata)) bbox = dict(boxstyle ="round", fc ="0.8")arrowprops = dict( arrowstyle = "->", connectionstyle = "angle, angleA = 0, angleB = 90,\ rad = 10") offset = 72 # Annotationax.annotate('data = (%.1f, %.1f)'%(xdata, ydata), (xdata, ydata), xytext =(-2 * offset, offset), textcoords ='offset points', bbox = bbox, arrowprops = arrowprops) disp = ax.annotate('display = (%.1f, %.1f)'%(xdisplay, ydisplay), (xdisplay, ydisplay), xytext =(0.5 * offset, -offset), xycoords ='figure pixels', textcoords ='offset points', bbox = bbox, arrowprops = arrowprops) # To display the annotationplt.show() |
Output:
Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.
To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course


