Trazar múltiples líneas en Python Matplotlib

Suraj Joshi 30 enero 2023
  1. Trazar una sola línea en Python Matplotlib
  2. Trazar múltiples líneas en Python Matplotlib
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:

Trazar una única parcela Matplotlib

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:

Plot Múltiples líneas en Matplotlib

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:

Trazar múltiples líneas en Matplotlib con la leyenda

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:

Controlar los colores en Plot con Múltiples líneas en Matplotlib con la leyenda

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 avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Artículo relacionado - Matplotlib Line