Cómo establecer el ancho de línea de las líneas en la leyenda Matplotlib
-
Método
set_linewidth()
para establecer el ancho de línea en Matplotliblegend
-
Método
matplotlib.pyplot.setp()
para establecer el ancho de línea en Matplotliblegend
Podemos cambiar el ancho de línea de las líneas en la leyenda Matplotlib usando el método set_linewidth()
del objeto de leyenda y el método setp()
de los objetos artist
.
Método set_linewidth()
para establecer el ancho de línea en Matplotlib legend
El parámetro linewidth
en la función de trazado puede usarse para controlar el ancho del trazado de un objeto particular y el método set_linewidth()
puede usarse para controlar el ancho de las líneas de la leyenda en Matplotlib.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-3, 3, 100)
y1 = np.sin(x)
y2 = np.cos(x)
fig, ax = plt.subplots(figsize=(8, 6))
ax.plot(x, y1, c="r", label="sinx", linewidth=3.0)
ax.plot(x, y2, c="g", label="cosx", linewidth=5.0)
leg = plt.legend()
leg.get_lines()[0].set_linewidth(6)
leg.get_lines()[1].set_linewidth(10)
plt.show()
Producción:
El ancho de línea de dos líneas en el diagrama es 3.0
y 5.0
respectivamente, y el ancho de línea de las líneas en la leyenda por defecto usa el mismo ancho de línea que en el diagrama.
leg = plt.legend()
leg.get_lines()[0].set_linewidth(6)
leg
es el objeto de la leyenda y leg.get_lines()
devuelve la lista de instancias de línea en la leyenda.
set_linewidth()
podría cambiar el ancho de línea de la línea de la leyenda para que sea otro valor en lugar de eso en el gráfico.
Método matplotlib.pyplot.setp()
para establecer el ancho de línea en Matplotlib legend
El método matplotlib.pyplot.setp()
nos permite establecer la propiedad de los objetos pyplot. Podemos usar el parámetro linewidth
de la función setp()
para establecer el ancho de línea de un objeto de leyenda particular.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-3, 3, 100)
y1 = np.sin(x)
y2 = np.cos(x)
fig, ax = plt.subplots(figsize=(8, 6))
ax.plot(x, y1, c="r", label="sinx", linewidth=3.0)
ax.plot(x, y2, c="g", label="cosx", linewidth=5.0)
leg = plt.legend()
leg_lines = leg.get_lines()
leg_texts = leg.get_texts()
plt.setp(leg_lines[0], linewidth=6)
plt.setp(leg_lines[1], linewidth=12)
plt.setp(leg_texts, fontsize=10)
plt.show()
Producción:
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn