Python高效办公

openpyxl3.0官方文档(15)—— 雷达图

2020-07-08  本文已影响0人  Sinchard

在工作表中以列或行排列的数据可以在雷达图中绘制。雷达图比较多个数据序列的总值。它实际上是面积图在x轴上的投影。
雷达图有两种类型:标准型雷达图,用线标记区域;填充型雷达图,用线填充整个区域;另一种类型marker是无效。如果需要标记,可以为相关系列设置这些标记。

    from openpyxl import Workbook
    from openpyxl.chart import (
        RadarChart,
        Reference,
    )
    
    wb = Workbook()
    ws = wb.active
    
    rows = [
        ['Month', "Bulbs", "Seeds", "Flowers", "Trees & shrubs"],
        ['Jan', 0, 2500, 500, 0,],
        ['Feb', 0, 5500, 750, 1500],
        ['Mar', 0, 9000, 1500, 2500],
        ['Apr', 0, 6500, 2000, 4000],
        ['May', 0, 3500, 5500, 3500],
        ['Jun', 0, 0, 7500, 1500],
        ['Jul', 0, 0, 8500, 800],
        ['Aug', 1500, 0, 7000, 550],
        ['Sep', 5000, 0, 3500, 2500],
        ['Oct', 8500, 0, 2500, 6000],
        ['Nov', 3500, 0, 500, 5500],
        ['Dec', 500, 0, 100, 3000 ],
    ]
    
    for row in rows:
        ws.append(row)
    
    chart = RadarChart()
    chart.type = "filled"
    labels = Reference(ws, min_col=1, min_row=2, max_row=13)
    data = Reference(ws, min_col=2, max_col=5, min_row=1, max_row=13)
    chart.add_data(data, titles_from_data=True)
    chart.set_categories(labels)
    chart.style = 26
    chart.title = "Garden Centre Sales"
    chart.y_axis.delete = True
    
    ws.add_chart(chart, "A17")
    
    wb.save("radar.xlsx")
    
在这里插入图片描述
上一篇下一篇

猜你喜欢

热点阅读