zoukankan      html  css  js  c++  java
  • Python xlsxwriter库 图表Demo

    折线图

    import xlsxwriter
    
    # 创建一个excel
    workbook = xlsxwriter.Workbook("chart_line.xlsx")
    # 创建一个sheet
    # worksheet = workbook.add_worksheet()
    worksheet = workbook.add_worksheet("bug_analysis")
    
    # 自定义样式,加粗
    bold = workbook.add_format({'bold': 1})
    
    # --------1、准备数据并写入excel---------------
    # 向excel中写入数据,建立图标时要用到
    headings = ['Number', 'testA', 'testB']
    data = [
        ['2017-9-1', '2017-9-2', '2017-9-3', '2017-9-4', '2017-9-5', '2017-9-6'],
        [10, 40, 50, 20, 10, 50],
        [30, 60, 70, 50, 40, 30],
    ]
    
    # 写入表头
    worksheet.write_row('A1', headings, bold)
    
    # 写入数据
    worksheet.write_column('A2', data[0])
    worksheet.write_column('B2', data[1])
    worksheet.write_column('C2', data[2])
    
    # --------2、生成图表并插入到excel---------------
    # 创建一个柱状图(line chart)
    chart_col = workbook.add_chart({'type': 'line'})
    
    # 配置第一个系列数据
    chart_col.add_series({
        # 这里的sheet1是默认的值,因为我们在新建sheet时没有指定sheet名
        # 如果我们新建sheet时设置了sheet名,这里就要设置成相应的值
        'name': '=bug_analysis!$B$1',
        'categories': '=bug_analysis!$A$2:$A$7',
        'values':   '=bug_analysis!$B$2:$B$7',
        'line': {'color': 'red'},
    })
    
    # 配置第二个系列数据
    # chart_col.add_series({
    #     'name': '=bug_analysis!$C$1',
    #     'categories':  '=bug_analysis!$A$2:$A$7',
    #     'values':   '=bug_analysis!$C$2:$C$7',
    #     'line': {'color': 'yellow'},
    # })
    
    # 配置第二个系列数据(用了另一种语法)
    chart_col.add_series({
        'name': ['bug_analysis', 0, 2],
        'categories': ['bug_analysis', 1, 0, 6, 0],
        'values': ['bug_analysis', 1, 2, 6, 2],
        'line': {'color': 'yellow'},
    })
    
    # 设置图表的title 和 x,y轴信息
    chart_col.set_title({'name': 'The xxx site Bug Analysis'})
    chart_col.set_x_axis({'name': 'Test number'})
    chart_col.set_y_axis({'name':  'Sample length (mm)'})
    
    # 设置图表的风格
    chart_col.set_style(1)
    
    # 把图表插入到worksheet并设置偏移
    worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})
    
    workbook.close()
    

    柱状图

    import xlsxwriter
    
    # 创建一个excel
    workbook = xlsxwriter.Workbook("chart_column.xlsx")
    # 创建一个sheet
    # worksheet = workbook.add_worksheet()
    worksheet = workbook.add_worksheet("bug_analysis")
    
    # 自定义样式,加粗
    bold = workbook.add_format({'bold': 1})
    
    # --------1、准备数据并写入excel---------------
    # 向excel中写入数据,建立图标时要用到
    headings = ['Number', 'testA', 'testB']
    data = [
        ['2017-9-1', '2017-9-2', '2017-9-3', '2017-9-4', '2017-9-5', '2017-9-6'],
        [10, 40, 50, 20, 10, 50],
        [30, 60, 70, 50, 40, 30],
    ]
    
    # 写入表头
    worksheet.write_row('A1', headings, bold)
    
    # 写入数据
    worksheet.write_column('A2', data[0])
    worksheet.write_column('B2', data[1])
    worksheet.write_column('C2', data[2])
    
    # --------2、生成图表并插入到excel---------------
    # 创建一个柱状图(column chart)
    chart_col = workbook.add_chart({'type': 'column'})
    
    # 配置第一个系列数据
    chart_col.add_series({
        # 这里的sheet1是默认的值,因为我们在新建sheet时没有指定sheet名
        # 如果我们新建sheet时设置了sheet名,这里就要设置成相应的值
        'name': '=bug_analysis!$B$1',
        'categories': '=bug_analysis!$A$2:$A$7',
        'values':   '=bug_analysis!$B$2:$B$7',
        'line': {'color': 'red'},
    })
    
    # 配置第二个系列数据(用了另一种语法)
    chart_col.add_series({
        'name': '=bug_analysis!$C$1',
        'categories':  '=bug_analysis!$A$2:$A$7',
        'values':   '=bug_analysis!$C$2:$C$7',
        'line': {'color': 'yellow'},
    })
    
    # 配置第二个系列数据(用了另一种语法)
    # chart_col.add_series({
    #     'name': ['bug_analysis', 0, 2],
    #     'categories': ['bug_analysis', 1, 0, 6, 0],
    #     'values': ['bug_analysis', 1, 2, 6, 2],
    #     'line': {'color': 'yellow'},
    # })
    
    # 设置图表的title 和 x,y轴信息
    chart_col.set_title({'name': 'The xxx site Bug Analysis'})
    chart_col.set_x_axis({'name': 'Test number'})
    chart_col.set_y_axis({'name':  'Sample length (mm)'})
    
    # 设置图表的风格
    chart_col.set_style(1)
    
    # 把图表插入到worksheet以及偏移
    worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})
    
    workbook.close()
    

    饼状图

    import xlsxwriter
    
    # 创建一个excel
    workbook = xlsxwriter.Workbook("chart_pie.xlsx")
    # 创建一个sheet
    worksheet = workbook.add_worksheet('bug_analysis')
    
    # 自定义样式,加粗
    bold = workbook.add_format({'bold': 1})
    
    # --------1、准备数据并写入excel---------------
    # 向excel中写入数据,建立图标时要用到
    data = [
        ['closed', 'active', 'reopen', 'NT'],
        [1012, 109, 123, 131],
    ]
    
    # 写入数据
    worksheet.write_row('A1', data[0], bold)
    worksheet.write_row('A2', data[1])
    
    # --------2、生成图表并插入到excel---------------
    # 创建一个柱状图(pie chart)
    chart_col = workbook.add_chart({'type': 'pie'})
    
    # 配置第一个系列数据
    chart_col.add_series({
        'name': 'Bug Analysis',
        'categories': '=bug_analysis!$A$1:$D$1',
        'values': '=bug_analysis!$A$2:$D$2',
        'points': [
            {'fill': {'color': '#00CD00'}},
            {'fill': {'color': 'red'}},
            {'fill': {'color': 'yellow'}},
            {'fill': {'color': 'gray'}},
        ],
    
    })
    
    # 设置图表的title 和 x,y轴信息
    chart_col.set_title({'name': 'Bug Analysis'})
    
    # 设置图表的风格
    chart_col.set_style(10)
    
    # 把图表插入到worksheet以及偏移
    worksheet.insert_chart('B10', chart_col, {'x_offset': 25, 'y_offset': 10})
    workbook.close()
    
    
  • 相关阅读:
    图标库
    AndroidManifest中注册application
    两个App之间的跳转 并传值
    Fresco加载显示gif图片
    弹出PopupWindow背景变暗的实现
    判断网络是否可用
    Java的安全性和可移植性
    DBUtils
    Observer
    IO
  • 原文地址:https://www.cnblogs.com/milesma/p/12023792.html
Copyright © 2011-2022 走看看