Trazar múltiples líneas en Python Matplotlib
Este tutorial explica cómo podemos trazar múltiples líneas usando Matplotlib y establecer un color diferente para cada línea de la figura.
Trazar una sola línea en Python Matplotlib
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y = 4 * x - 10
plt.plot(x, y)
plt.title("Plot line in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.show()
Producción:
Crea un trazado de la línea usando la función matplotlib.pyplot.plot()
. Pasamos las coordenadas X
y Y
de la línea como argumentos a la función plot()
.
Trazar múltiples líneas en Python Matplotlib
Para trazar múltiples líneas en Matplotlib, seguimos llamando a la función matplotlib.pyplot.plot()
para cada línea y pasamos las coordenadas de la línea como argumento a la respectiva función plot()
.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5
plt.plot(x, y1)
plt.plot(x, y2)
plt.plot(x, y3)
plt.plot(x, y4)
plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.show()
Producción:
Traza cuatro líneas diferentes con ejes comunes, cada una de ellas con diferentes colores. Llamamos a la función matplotlib.pyplot.plot()
4 veces para trazar las 4 líneas diferentes. Cada vez que pasamos las coordenadas de diferentes líneas como argumentos de la función.
Para hacer el gráfico más descriptivo, podemos añadir la leyenda al gráfico para inferir qué línea está representada por qué color.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5
plt.plot(x, y1, label="4x+5")
plt.plot(x, y2, label="3x+5")
plt.plot(x, y3, label="2x+5")
plt.plot(x, y4, label="x+5")
plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.legend()
plt.show()
Producción:
Traza 4 líneas en la figura junto con la leyenda. Para añadir una leyenda a la figura, establecemos una etiqueta para cada línea mientras se traza la línea estableciendo el parámetro label
en la función plot()
. Finalmente, llamamos matplotlib.pyplot.legend()
para añadir la leyenda de la figura.
Por defecto, Matplotlib asignará el color a la línea automáticamente. Si queremos controlar los colores de cada línea, utilizamos el método matplotlib.axes.Axes.set_prop_cycle()
.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5
colors = ["orange", "purple", "green", "red"]
plt.gca().set_prop_cycle(color=colors)
plt.plot(x, y1, label="4x+5")
plt.plot(x, y2, label="3x+5")
plt.plot(x, y3, label="2x+5")
plt.plot(x, y4, label="x+5")
plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.legend()
plt.show()
Producción:
Establece el naranja para la primera línea, el púrpura para la segunda, el verde para la tercera y el rojo para la cuarta. Pasamos la lista de colores a utilizar en orden como argumento al método matplotlib.axes.Axes.set_prop_cycle()
.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn