Matplotlib.axes.Axes.get_shared_y_axes() in Python

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_shared_y_axes() Function
The Axes.get_shared_y_axes() function in axes module of matplotlib library is used to return a reference to the shared axes Grouper object for y axes.
Syntax:
Axes.get_shared_y_axes(self)
Below examples illustrate the matplotlib.axes.Axes.get_shared_y_axes() function in matplotlib.axes:
Example 1:
# Implementation of matplotlib function import matplotlib.pyplot as plt import numpy as np def GFG1(temp): return (5. / 9.) * (temp - 32) def GFG2(ax1): y1, y2 = ax1.get_ylim() ax_twin .set_ylim(GFG1(y1), GFG1(y2)) ax_twin .figure.canvas.draw() fig, ax1 = plt.subplots() ax_twin = ax1.twiny() ax1.callbacks.connect("ylim_changed", GFG2) ax1.plot(np.linspace(-40, 120, 100)) ax1.set_ylim(0, 100) ax1.set_xlabel('Fahrenheit') ax_twin .set_xlabel('Celsius') w = ax1.get_shared_y_axes() w1 = ax_twin.get_shared_y_axes() for i in w: x, y = list(i) ax1.text(35, 15, "Value return : \n", fontweight ="bold") ax1.text(20, 12, str(x)+"\n"+str(y), fontweight ="bold") fig.suptitle('matplotlib.axes.Axes.get_shared_y_axes() \ function Example\n\n', fontweight ="bold") plt.show() |
Output:
Example 2:
# Implementation of matplotlib function import numpy as np import matplotlib.pyplot as plt # Create some mock data t = np.arange(0.01, 10.0, 0.001) data1 = np.exp(t) data2 = np.sin(0.4 * np.pi * t) fig, ax1 = plt.subplots() color = 'tab:blue'ax1.set_ylabel('time (s)') ax1.set_xlabel('exp', color = color) ax1.plot(data1, t, color = color) ax1.tick_params(axis ='x', labelcolor = color) ax2 = ax1.twiny() color = 'tab:green'ax2.set_xlabel('sin', color = color) ax2.plot(data2, t, color = color) ax2.tick_params(axis ='x', labelcolor = color) w = ax1.get_shared_y_axes() w1 = ax2.get_shared_y_axes() for i in w: x, y = list(i) ax1.text(7500, 6.5, "Value return : \n", fontweight ="bold") ax1.text(5000, 6, str(x)+"\n"+str(y), fontweight ="bold") fig.suptitle('matplotlib.axes.Axes.get_shared_y_axes() \ function Example\n\n', fontweight ="bold") plt.show() |
Output:




