我有一张包含数据的 Excel 表:
当我尝试创建这样的图表时 [群集图表]
openpyxl 无法正确读取数据
from openpyxl.chart import BarChart, Reference
from openpyxl import load_workbook, workbook
wb = load_workbook("Book1.xlsx")
ws = wb.active
data = Reference(ws, min_col=2, min_row=1, max_row=12,max_col=7)
categories = Reference(ws, min_col=1, min_row=3, max_row=12)
barChart = BarChart()
barChart.type = "col"
barChart.grouping = "clustered"
barChart.title = "XYZ"
barChart.y_axis.title = "service"
barChart.x_axis.title = "month"
barChart.add_data(data,titles_from_data=True)
barChart.set_categories(categories,labels="dasd")
barChart.style = 5
barChart.width = 20
barChart.height = 10
ws.add_chart(barChart,"k8")
wb.save("test.xlsx")
我尝试取消合并标题,但是,如果我这样做,我想要的图表将不会被创建。
我尝试了所有组合,但 openpyxl 就是不能正确捕获数据
您可以将每一行添加为单独的系列。
在添加初始数据行 m1 后,将 m2 至 m10 的每一行添加为系列。
包含两级标题的类别取自第 1 行和第 2 行。然后为 X 轴启用“多级类别标签”。
下面的代码示例假设您的数据包含在 A1:G12 范围内,
代码示例一
代码示例 II
将所有系列添加为一个数据引用
以下是预期生成的图表。