web-dev-qa-db-fra.com

Comment changer la couleur de la ligne de tracé du bleu au noir?

Je suis bloqué lorsque j'ai généré un ensemble de données et que j'ai essayé de colorer la ligne de tracé en python.

Par exemple, j'aimerais changer la couleur de trait du bleu au noir ici.

Ceci est ce que j'ai et retourne est l'ensemble des données que j'ai obtenu de pandas.

ax=plt.gca()
ax.set_axis_bgcolor('#cccccc')
returns.plot()

Screenshot of plot

19
sdg

La méthode habituelle pour définir la couleur de la ligne dans matplotlib consiste à la spécifier dans la commande plot. Cela peut être fait par une chaîne après les données, par ex. "r-" Pour une ligne rouge, ou en énonçant explicitement l'argument 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()

Voir aussi le documentation de la commande plot .

Si vous avez déjà une ligne avec une certaine couleur, vous pouvez la changer avec la méthode lines2D.set_color().

line, = plt.plot([1,2,3], [4,5,3], color="blue")
line.set_color("black")

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 vous voulez changer cette couleur plus tard, vous pouvez le faire en

plt.gca().get_lines()[0].set_color("black")

Cela vous donnera la première (éventuellement la seule) ligne des axes actifs actuels.
Si vous avez plus d’axes dans l’intrigue, vous pouvez les parcourir en boucle.

for ax in plt.gcf().axes:
    ax.get_lines()[0].set_color("black")

et si vous avez plus de lignes, vous pouvez aussi les parcourir en boucle.

35