【问题标题】:How to change the plot line color from blue to black?如何将绘图线颜色从蓝色更改为黑色?
【发布时间】:2017-01-18 00:07:32
【问题描述】:

当我生成一组数据并尝试在 python 中为绘图线着色时,我被卡住了。

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

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

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

【问题讨论】:

    标签: python matplotlib


    【解决方案1】:

    在 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")
    

    如果你有更多的行,你也可以循环它们。

    【讨论】:

    • 问题是我已经从 pandas 中检索到了一组数据。 return 是一组返回变量,我将它们绘制为折线图。我需要改变这条线的颜色。
    • @sdg 我相应地编辑了答案。希望这是您正在寻找的。​​span>
    • 谢谢。这对我有帮助,但不能解决我的问题。我使用生成摘要 res 的第三方模型 ARCH,然后使用 res.plot() 打印摘要。
    • 为什么这不能解决您的问题?即使您使用arch,此答案也有效。
    • 它没有。在我生成结果表单之后。 from arch import arch_model am = arch_model(returns) res = am.fit(update_freq = 5) print(res.summary()) res.plot(color = 'r') I got TypeError: plot() got an unexpected keyword argument '颜色'
    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

      如果您有多个绘图线,并且您想为每条线设置不同的颜色, 在你的 plot() 中使用下面的属性,其中每个索引代表一列的线条颜色。

      color=['color1','color2']
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-10-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多