我正在用XLS编写器在EXCEL上制作图形,用绿色的条表示正值,红色表示负值.

当前代码如下所示:

chart3 = workbook.add_chart({'type': 'column'})
chart3.add_series({
    'values': '=Summary!$W$2:$W$76',
    'categories': '=Summary!$A$2:$A$76',
    'gap': 4,
    'line': {'width': 1},
    'name': '=Summary!$W$1',
    'fill':   {'color': 'green'},
    'invert_if_negative': True
})

它可以区分图形中的正值和负值,但负值只是没有 colored颜色 的.有没有办法把反色变成红色?

我已try 使用其他属性,如Inverted_COLOR或任何类似的语法,但不起作用

推荐答案

您需要支持invert_if_negative_color参数的XlsxWriter版本>;=3.1.1:

from xlsxwriter import Workbook


workbook = Workbook("chart.xlsx")

worksheet = workbook.add_worksheet()
chart = workbook.add_chart({"type": "column"})

worksheet.write_column("A1", [3, 2, -3, 4, -2])

chart.add_series(
    {
        "values": "=Sheet1!$A$1:$A$5",
        "fill": {"color": "green"},
        "invert_if_negative": True,
        "invert_if_negative_color": "red",
    }
)

worksheet.insert_chart("C1", chart)

workbook.close()

输出:

enter image description here

Python相关问答推荐

Pandas 在最近的日期合并,考虑到破产

为什么sys.exit()不能与subproccess.run()或subprocess.call()一起使用

通过pandas向每个非空单元格添加子字符串

如何使用表达式将字符串解压缩到Polars DataFrame中的多个列中?

为一个组的每个子组绘制,

在Python中计算连续天数

在Admin中显示从ManyToMany通过模型的筛选结果

替换现有列名中的字符,而不创建新列

Odoo16:模板中使用的docs变量在哪里定义?

将CSS链接到HTML文件的问题

如何在PythonPandas 中对同一个浮动列进行逐行划分?

如何防止html代码出现在quarto gfm报告中的pandas表之上

极柱内丢失类型信息""

如何提高Pandas DataFrame中随机列 Select 和分配的效率?

Pandas:计数器的滚动和,复位

TypeError:';Locator';对象无法在PlayWriter中使用.first()调用

用由数据帧的相应元素形成的列表的函数来替换列的行中的值

如何在python tkinter中绑定键盘上的另一个回车?

大型稀疏CSR二进制矩阵乘法结果中的错误

将标签与山脊线图对齐