En este artículo, vamos a discutir cómo crear ejes y de ambos lados de un diagrama de Matplotlib.
A veces, para un análisis rápido de datos, se requiere crear un solo gráfico que tenga dos variables de datos con diferentes escalas. Para este propósito , se utilizan métodos de ejes gemelos , es decir, ejes dobles X o Y. La función matplotlib.axes.Axes.twinx() en el módulo de ejes de la biblioteca matplotlib se usa para crear ejes gemelos que comparten el eje X.
Sintaxis:
matplotlib.axes.Axes.twinx(self)
Este método no toma ningún parámetro, genera un error si se proporciona. Devuelve el objeto ax_twin que indica que se crea una nueva instancia de Axes. Los siguientes ejemplos ilustran la función matplotlib.axes.Axes.twinx() en matplotlib.axes :
Ejemplo 1:
Python3
# import libraries import numpy as np import matplotlib.pyplot as plt # Creating dataset x = np.arange(1.0, 100.0, 0.191) dataset_1 = np.exp(x**0.25) - np.exp(x**0.5) dataset_2 = np.sin(0.4 * np.pi * x**0.5) + np.cos(0.8 * np.pi * x**0.25) # Creating plot with dataset_1 fig, ax1 = plt.subplots() color = 'tab:red' ax1.set_xlabel('X-axis') ax1.set_ylabel('Y1-axis', color = color) ax1.plot(x, dataset_1, color = color) ax1.tick_params(axis ='y', labelcolor = color) # Adding Twin Axes to plot using dataset_2 ax2 = ax1.twinx() color = 'tab:green' ax2.set_ylabel('Y2-axis', color = color) ax2.plot(x, dataset_2, color = color) ax2.tick_params(axis ='y', labelcolor = color) # Adding title plt.title('Use different y-axes on the left and right of a Matplotlib plot', fontweight ="bold") # Show plot plt.show()
Producción:
Ejemplo 2:
Python3
# import libraries import numpy as np import matplotlib.pyplot as plt from matplotlib import rc rc('mathtext', default='regular') # Creating dataset x = np.arange(10) dataset_1 = np.random.random(10)*30 dataset_2 = np.random.random(10)*60 dataset_3 = np.random.random(10)*100 # Creating figure fig = plt.figure() # Plotting dataset_2 ax = fig.add_subplot(111) ax.plot(x, dataset_2, '-', label='dataset_2') ax.plot(x, dataset_3, '-', label='dataset_3') # Creating Twin axes for dataset_1 ax2 = ax.twinx() ax2.plot(x, dataset_1, '-r', label='dataset_1') # Adding title plt.title('Use different y-axes on the left and right of a Matplotlib plot', fontweight="bold") # Adding legend ax.legend(loc=0) ax2.legend(loc=0) # adding grid ax.grid() # Adding labels ax.set_xlabel("X-axis") ax.set_ylabel(r"Y1-axis") ax2.set_ylabel(r"Y2-axis") # Setting Y limits ax2.set_ylim(0, 35) ax.set_ylim(-20, 100) # Show plot plt.show()
Producción:
Publicación traducida automáticamente
Artículo escrito por jeeteshgavande30 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA