#使用xlsxwriter 創建圖表chart
import xlsxwriter
workbook = xlsxwriter.Workbook('條形圖.xlsx')
worksheet = workbook.add_worksheet()
chart = workbook.add_chart({'type':'column'}) #注意是workbook,新增圖表chart
line_chart = workbook.add_chart({'type': 'line'})
data =[
[3,6,9,12,15,18],
[2,4,6,8,10,12],
[1,2,3,4,5,6],
]
#寫入一整列數據
worksheet.write_column('A1',data[0])
worksheet.write_column('B1',data[1])
worksheet.write_column('C1',data[2])
#插入數據chart.add_series
chart.add_series({'values': '=Sheet1!$A$1:$A$6'})
chart.add_series({'values': '=Sheet1!$B$1:$B$6'})
chart.add_series({'values': '=Sheet1!$C$1:$C$6'})
line_chart.add_series({'values': '=Sheet1!$A$1:$A$6'})
line_chart.add_series({'values': '=Sheet1!$B$1:$B$6'})
line_chart.add_series({'values': '=Sheet1!$C$1:$C$6'})
chart.combine(line_chart) #合並兩個不同類型的圖表,用combine()函數
#設置x軸與y軸屬性
chart.set_x_axis({
'name': '月份',
'name_font':{ 'size':12,'bold':True},
'num_font': {'italic':True},
})
#設置圖表尺寸
#chart.set_size({'width':720,'height':576})
chart.set_size({'x_scale':1.5,'y_scale':2})
#{'x_offset':20,'y_offset':5} 表示整個chart圖表偏移
worksheet.insert_chart('A8',chart,{'x_offset':20,'y_offset':5}) #把圖表chart添加到excel中
#設置圖表標題
chart.set_title({'name':'毛收入'})
'''
chart.set_title({
'name': '2020年毛利潤',
'overllay': True,
'layout':{
'x': 0.62,
'y': 0.24,
}
})
'''
#chart.set_title({'none': True}) #關閉此默認標題同時關閉所有其他set_title()選項。
#設置圖表樣式:
#用set_style(num)函數,用於將圖表的樣式設
#置為Excel中“設計”選項卡上可用的48種內置樣式之一。
#參數num就是48種內置樣式之一。
chart.set_style(4)
#設置圖表區域
chart.set_chartarea({
'fill': {'color':'#cccccc'}
})
#在下方添加數據表:用set_table()函數在水平軸下方添加一個數據表
chart.set_table()
workbook.close()
=====================================
安裝:XlsxWriter
cmd窗口下,輸入命令pip install XlsxWriter