首页 > 解决方案 > pygal 在“添加”期间更改一行的颜色

问题描述

如何更改 pygal 中一行的颜色。

澄清一下:我不想在构造函数中设置样式。我想在add函数期间传递颜色信息。

原因:我有一个绘制多条线的脚本(数量不时变化)。我绘制的最后一行应该总是用黑色绘制。最后一行可能是第 3 行,但也可以是第 5 行或第 2 行。

这是一个例子 - 第二行应该是黑色的。

import pygal
import pandas as pd

if __name__ == '__main__':
    datetimeline = pygal.DateTimeLine(
        x_label_rotation=-90)
    S1 = [
        (pd.Timestamp(2013, 1, 2, 12, 0), 100.8),
        (pd.Timestamp(2013, 1, 12, 14, 30, 45), 100.8),
        (pd.Timestamp(2013, 2, 2, 6), 100.8),
        (pd.Timestamp(2013, 2, 22, 9, 45), 100.8)
    ]
    datetimeline.add("Line1", S1)

    S2 = pd.Series([
        (pd.Timestamp(2013, 1, 2, 12, 0), 500),
        (pd.Timestamp(2013, 1, 12, 14, 30, 45), 233),
        (pd.Timestamp(2013, 2, 2, 6), 168),
        (pd.Timestamp(2013, 2, 22, 9, 45), 900)
    ])
    black = pygal.style.Style(colors=('black'))
    datetimeline.add("Line2", S2, style=black)
    datetimeline.render_to_file("mysvg.svg")
    pass

标签: pythonpygal

解决方案


推荐阅读