Matplotlib is a library in Python and it is numerical – mathematical extension for NumPy library. The Axes Class contains most of the figure elements: Axis, Tick, Line2D, Text, Polygon, etc., and sets the coordinate system. And the instances of Axes supports callbacks through a callbacks attribute.
matplotlib.axes.Axes.inset_axes() Function
The Axes.inset_axes() function in axes module of matplotlib library is also used to add a child inset axes to this existing axes.
Syntax: Axes.inset_axes(self, bounds, *, transform=None, zorder=5, **kwargs)
Parameters: This method accept the following parameters that are described below:
- bounds: This parameter is the Lower-left corner of inset axes, and its width and
height.[x0, y0, width, height]
- transform: This parameter is the units of rect are in axes-relative coordinates.
- zorder: This parameter contains the number and its default value is 5.
Returns: This method returns the ax which is the created Axes instance.
Note: This function works in Matplotlib version >= 3.0
Below examples illustrate the matplotlib.axes.Axes.inset_axes() function in matplotlib.axes:
Example 1:
# Implementation of matplotlib function import matplotlib.pyplot as plt fig, ax = plt.subplots() ax.plot( range ( 10 )) axin1 = ax.inset_axes([ 0.8 , 0.1 , 0.15 , 0.15 ]) axin2 = ax.inset_axes( [ 5 , 7 , 2.3 , 2.3 ], transform = ax.transData) ax.set_title( 'matplotlib.axes.Axes.inset_axes() Example' , fontsize = 14 , fontweight = 'bold' ) plt.show() |
Output:
Example 2:
# Implementation of matplotlib function import matplotlib.pyplot as plt import numpy as np def Lazyroar(): from matplotlib.cbook import get_sample_data import numpy as np f = get_sample_data( "axes_grid / bivariate_normal.npy" , asfileobj = False ) z = np.load(f) return z, ( - 3 , 4 , - 4 , 3 ) fig, ax = plt.subplots() X, extent = Lazyroar() Z2 = np.zeros([ 150 , 150 ], dtype = "g" ) ny, nx = X.shape Z2[ 30 : 30 + ny, 30 : 30 + nx] = X ax.imshow(Z2, extent = extent, interpolation = "nearest" , origin = "lower" , cmap = "Greens" ) axins = ax.inset_axes([ 0.5 , 0.5 , 0.47 , 0.47 ]) axins.imshow(Z2, extent = extent, interpolation = "nearest" , origin = "lower" , cmap = "Greens" ) x1, x2, y1, y2 = - 1.5 , - 0.9 , - 2.5 , - 1.9 axins.set_xlim(x1, x2) axins.set_ylim(y1, y2) ax.indicate_inset_zoom(axins) ax.set_title( 'matplotlib.axes.Axes.inset_axes() Example' , fontsize = 14 , fontweight = 'bold' ) plt.show() |
Output: