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.autoscale() Function
The Axes.autoscale() function in axes module of matplotlib library is used to autoscale the axis view to the data (toggle).
Syntax: Axes.autoscale(self, enable=True, axis=’both’, tight=None)
Parameters: This method accepts the following parameters.
- enable : If this parameter is True (default) turns autoscaling on, False turns it off.
- axis: This parameter is used to which axis to be operate on. {‘both’, ‘x’, ‘y’}
- tight: This parameter is forwarded to autoscale_view.
Return value: This method does not return any value.
Below examples illustrate the matplotlib.axes.Axes.autoscale() function in matplotlib.axes:
Example 1:
# Implementation of matplotlib function import numpy as np
from matplotlib.path import Path
from matplotlib.patches import PathPatch
import matplotlib.pyplot as plt
vertices = []
codes = []
codes = [Path.MOVETO] + [Path.LINETO] * 3 + [Path.CLOSEPOLY]
vertices = [( 1 , 1 ), ( 1 , 2 ), ( 2 , 2 ),
( 2 , 1 ), ( 0 , 0 )]
codes + = [Path.MOVETO] + [Path.LINETO] * 2 + [Path.CLOSEPOLY]
vertices + = [( 4 , 4 ), ( 5 , 5 ), ( 5 , 4 ),
( 0 , 0 )]
vertices = np.array(vertices, float )
path = Path(vertices, codes)
pathpatch = PathPatch(path, facecolor = 'None' ,
edgecolor = 'green' )
fig, ax = plt.subplots()
ax.add_patch(pathpatch) ax.autoscale() fig.suptitle('matplotlib.axes.Axes.autoscale() \ function Example\n', fontweight = "bold" )
fig.canvas.draw() plt.show() |
Output:
Example 2:
# Implementation of matplotlib function import matplotlib.pyplot as plt
import numpy as np
from matplotlib.collections import EllipseCollection
x = np.arange( 10 )
y = np.arange( 15 )
X, Y = np.meshgrid(x, y)
XY = np.column_stack((X.ravel(), Y.ravel()))
fig, ax = plt.subplots()
ec = EllipseCollection( 10 , 10 , 5 , units = 'y' ,
offsets = XY * 0.5 ,
transOffset = ax.transData,
cmap = "inferno" )
ec.set_array((X * Y).ravel())
ax.add_collection(ec) ax.autoscale_view() ax.set_xlabel( 'X' )
ax.set_ylabel( 'y' )
cbar = plt.colorbar(ec)
cbar.set_label( 'X + Y' )
fig.suptitle('matplotlib.axes.Axes.autoscale() function \ Example\n', fontweight = "bold" )
fig.canvas.draw() plt.show() |
Output: