Skip to content
Related Articles

Related Articles

Matplotlib.pyplot.twinx() in Python

View Discussion
Improve Article
Save Article
  • Last Updated : 11 Apr, 2020

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.

Sample Code




# sample code
import matplotlib.pyplot as plt 
    
plt.plot([1, 2, 3, 4], [16, 4, 1, 8]) 
plt.show() 


Output:

matplotlib.pyplot.twinx() Function

The twinx() function in pyplot module of matplotlib library is used to make and return a second axes that shares the x-axis.

Syntax:

matplotlib.pyplot.twinx(ax=None)

Parameters: This method does not accepts any parameters.

Returns: This returns the second axes that shares the x-axis

Below examples illustrate the matplotlib.pyplot.twinx() function in matplotlib.pyplot:

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.twinx()
   
ax1.callbacks.connect("ylim_changed", GFG2)
ax1.plot(np.linspace(0, 120, 100))
ax1.set_xlim(30, 100)
   
ax1.set_ylabel('Fahrenheit')
ax_twin .set_ylabel('Celsius')
   
fig.suptitle('matplotlib.pyplot.twinx() 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, 20.0, 0.001)
data1 = np.exp(t)
data2 = np.sin(0.3 * np.pi * t)
   
fig, ax1 = plt.subplots()
   
color = 'tab:blue'
ax1.set_xlabel('time (s)')
ax1.set_ylabel('exp', color = color)
ax1.plot(t, data1, color = color)
ax1.tick_params(axis ='y', labelcolor = color)
   
ax2 = ax1.twinx()
   
color = 'tab:green'
ax2.set_ylabel('sin', color = color)
ax2.plot(t, data2, color = color)
ax2.tick_params(axis ='y', labelcolor = color)
  
fig.suptitle('matplotlib.pyplot.twinx() function \
Example\n\n', fontweight ="bold")
plt.show()


Output:


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!