如何将绘图线颜色从蓝色更改为黑色?

时间:2017-01-18 00:07:33

标签: python matplotlib

当我生成一组数据并尝试在python中为绘图线着色时,我陷入困境。

例如,我想在这里将线条颜色从蓝色更改为黑色。

这就是我所拥有的,并且返回的是我从pandas获得的数据集。

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

Screenshot of plot

2 个答案:

答案 0 :(得分:33)

在matplotlib中设置线条颜色的常用方法是在plot命令中指定它。这可以通过数据之后的字符串来完成,例如, "r-"表示红线,或明确说明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()

另请参阅plot command's documentation

如果您已经拥有某种颜色的线条,则可以使用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()

如果您想稍后更改此颜色,可以通过

执行此操作
plt.gca().get_lines()[0].set_color("black")

这将为您提供当前活动轴的第一行(可能是唯一的) 如果你在图中有更多的轴,你可以循环它们

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

如果你有更多行,你也可以遍历它们。

答案 1 :(得分:0)

如果您在创建后获得对象(例如在“seasonal_decompose”之后),您始终可以访问和编辑绘图的属性;例如,将第一个子图的颜色从蓝色更改为黑色:

plt.axes[0].get_lines()[0].set_color('black')