Python XlsxWriter 图表图例
根据图表的类型,数据以不同颜色或图案的柱、条、线、弧等形式直观地表示。图表图例使你可以轻松快速地了解哪种颜色/图案对应于哪个数据系列。
使用图表图例
要设置图例并配置其位置和字体等属性,XlsxWriter 具有 set_legend() 方法。属性为:
-
None : Excel 图表中的图例默认开启。 none=True 选项关闭图表图例。
-
Position :设置图表图例的位置。可以设置为上、下、左、右、无。
-
Font : 设置图表图例的字体属性(如名称、大小、粗体、斜体等)。
-
Border :设置图例的边框颜色、样式等属性。
-
Fill :设置图例的实心填充属性,如颜色。
-
Pattern :设置图例的图案填充属性。
-
Gradient :设置图例的渐变填充属性。
图表的部分图例属性设置如下:
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 轴标题下方的图例。
在图表中,对应的列 physics and maths 以不同的颜色显示。图表右侧的小彩色框符号是显示对应颜色的图例 physics or maths .