Python XlsxWriter - 图表图例


根据图表的类型,数据以不同颜色或图案的柱、条、线、弧等形式直观地表示。图表图例可以让您轻松快速了解哪种颜色/图案对应哪个数据系列。

使用图表图例

要设置图例并配置其属性(例如位置和字体),XlsxWriter 有set_legend()方法。属性是 -

  • - 在 Excel 图表中,默认情况下打开图例。none=True 选项关闭图表图例。

  • 位置- 设置图表图例的位置。可以设置为顶部、底部、左侧、右侧、无。

  • 字体- 设置图表图例的字体属性(如名称、大小、粗体、斜体等)。

  • 边框- 设置图例的边框属性,例如颜色和样式。

  • 填充- 设置图例的实心填充属性,例如颜色。

  • 图案- 设置图例的图案填充属性。

  • 渐变- 设置图例的渐变填充属性。

图表的一些图例属性设置如下 -

chart1.set_legend(
   {'position':'bottom', 'font': {'name':'calibri','size': 9, 'bold': True}}
)

例子

这是根据上述特征显示图例的完整代码 -

import xlsxwriter

wb = xlsxwriter.Workbook('hello.xlsx')
worksheet = wb.add_worksheet()
chart1 = wb.add_chart({'type': 'column'})

# Add the worksheet data that the charts will refer to.
headings = ['Name', 'Phy', 'Maths']
data = [
   ["Jay", 30, 60],
   ["Mohan", 40, 50],
   ["Veeru", 60, 70],
]

worksheet.write_row(0,0, headings)
worksheet.write_row(1,0, data[0])
worksheet.write_row(2,0, data[1])
worksheet.write_row(3,0, data[2])
chart1.add_series({
   'name': '=Sheet1!$B$1',
   'categories': '=Sheet1!$A$2:$A$4',
   'values': '=Sheet1!$B$2:$B$4',
})
chart1.add_series({
   'name': ['Sheet1', 0, 2],
   'categories': ['Sheet1', 1, 0, 3, 0],
   'values': ['Sheet1', 1, 2, 3, 2],
})
chart1.set_title ({'name': 'Marklist', 'name_font':
   {'name':'Times New Roman', 'size':24}})

chart1.set_x_axis({'name': 'Students', 'name_font':
   {'name':'Arial', 'size':16, 'bold':True},})

chart1.set_y_axis({'name': 'Marks','name_font':
   {'name':'Arial', 'size':16, 'bold':True},
   'num_font':{'name':'Arial', 'italic':True}})

chart1.set_legend({'position':'bottom', 'font':
   {'name':'calibri','size': 9, 'bold': True}})

worksheet.insert_chart('B7', chart1)

wb.close()

输出

该图表在 X 轴标题下方显示图例。

传奇

在图表中,与物理数学对应的列以不同的颜色显示。图表右侧的小彩色框符号是图例,显示哪种颜色对应于物理数学