Matplotlib.axes.Axes.get_aspect() in Python

Last Updated : 19 Apr, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report
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.get_aspect() Function

The Axes.get_aspect() function in axes module of matplotlib library is used to get the aspect of the axis scaling, i.e. the ratio of y-unit to x-unit
Syntax:Axes.get_aspect(self) Parameters: This method does not accepts any parameters. Return value: This method returns the aspect value.
Below examples illustrate the matplotlib.axes.Axes.get_aspect() function in matplotlib.axes: Example 1: Python3
# ImpleIn Reviewtation of matplotlib function  
import matplotlib.pyplot as plt
 
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.set_xscale("log")
ax1.set_yscale("log")
ax1.set_adjustable("datalim")
ax1.plot([1, 3, 34, 4, 46, 3, 7, 45, 10],
         [1, 9, 27, 8, 29, 84, 78, 19, 48],
         "o-", color ="green")

ax1.set_xlim(1e-1, 1e2)
ax1.set_ylim(1, 1e2)
 
ax2.set_xscale("log")
ax2.set_yscale("log")
ax2.set_adjustable("datalim")
ax2.plot([1, 3, 34, 4, 46, 3, 7, 45, 10],
         [1, 9, 27, 8, 29, 84, 78, 19, 48],
         "o-", color ="green")

ax2.set_xlim(1e-1, 1e2)
ax2.set_ylim(1, 1e2)
ax2.set_aspect(2)

w = ax1.get_aspect()
w1 = ax2.get_aspect()

ax1.set_title("Axes 1\n Ratio : " +str(w))
ax2.set_title("Axes 2\n Ratio : " +str(w1))

fig.suptitle('matplotlib.axes.Axes.get_aspect() \
function Example\n\n', fontweight ="bold")
fig.canvas.draw()
plt.show()
Output: Example 2: Python3
# ImpleIn Reviewtation of matplotlib function  
import matplotlib.pyplot as plt
import matplotlib.tri as tri
import numpy as np
 
n_angles = 36
n_radii = 10
min_radius = 2
radii = np.linspace(min_radius, 0.95, n_radii)
 
angles = np.linspace(0, 2 * np.pi, n_angles, 
                     endpoint = False)

angles = np.repeat(angles[..., np.newaxis],
                   n_radii, axis = 1)

angles[:, 1::2] += 2 * np.pi / n_angles
 
x = (radii * np.cos(angles)).flatten()
y = (radii * np.sin(angles)).flatten()
 
triang = tri.Triangulation(x, y)
 
triang.set_mask(np.hypot(x[triang.triangles].mean(axis = 1),
                         y[triang.triangles].mean(axis = 1))
                < min_radius)
fig, (ax, ax1) = plt.subplots(1, 2)
 
ax.triplot(triang, 'bo-', lw = 1, color = "green")
 
ax1.set_aspect('equal')
ax1.triplot(triang, 'bo-', lw = 1, color = "green")

w = ax.get_aspect()
w1 = ax1.get_aspect()

ax.set_title("Axes 1\n Ratio : " +str(w))
ax1.set_title("Axes 2\n Ratio : " +str(w1))

fig.suptitle('matplotlib.axes.Axes.get_aspect() \
function Example\n\n', fontweight ="bold")
fig.canvas.draw()
plt.show()
Output:

Next Article
Article Tags :
Practice Tags :

Similar Reads