Estoy atascado cuando he generado un conjunto de datos e intentado colorear la línea de trazado en python.
Por ejemplo, me gustaría cambiar el color de la línea de azul a negro aquí.
Esto es lo que tengo y devuelve es el conjunto de datos que obtuve de los pandas.
ax=plt.gca() ax.set_axis_bgcolor('#cccccc') returns.plot()
La forma habitual de configurar el color de la línea en matplotlib es especificarlo en el comando plot. Esto puede hacerse mediante una cadena después de los datos, por ejemplo, "r-"
para una línea roja, o expresando explícitamente el argumento de color
.
import matplotlib.pyplot as plt plt.plot([1,2,3], [2,3,1], "r-") # red line plt.plot([1,2,3], [5,5,3], color="blue") # blue line plt.show()
Véase también la documentación del comando plot .
En caso de que ya tenga una línea con un color determinado, puede cambiar eso con el método lines2D.set_color()
.
line, = plt.plot([1,2,3], [4,5,3], color="blue") line.set_color("black")
La configuración del color de una línea en un gráfico de pandas también se realiza mejor en el momento de crear el gráfico:
import matplotlib.pyplot as plt import pandas as pd df = pd.DataFrame({ "x" : [1,2,3,5], "y" : [3,5,2,6]}) df.plot("x", "y", color="r") #plot red line plt.show()
Si desea cambiar este color más adelante, puede hacerlo
plt.gca().get_lines()[0].set_color("black")
Esto le dará la primera línea (posiblemente la única) de los ejes activos actuales.
En caso de que tenga más ejes en la ttwig, podría recorrerlos
for ax in plt.gcf().axes: ax.get_lines()[0].set_color("black")
y si tienes más líneas, también puedes pasar sobre ellas.