python生成Excel图表(通过xlsxwriter)
第一步:处理数据
- bugnum_terminal = {
- "Android的BUG数": [bugnum_android],
- "iOS的BUG数": [bugnum_ios],
- "server的BUG数": [bugnum_server],
- "FE的BUG数": [bugnum_fe]
- }
- def parsedata(self, dictdata, columns=[]):
- result = []
- if columns == []:
- keys = dictdata.keys()
- else:
- keys = columns
- result.append([key for key in keys])
- values = []
- for key in keys:
- values.append(dictdata[key])
- values = zip(*values)
- for value in values:
- result.append(list(value))
- return result
第二步:将数据插入Excel中
- workbook = xlsxwriter.Workbook(“Excel名字.xlsx”)
- worksheet = workbook.add_worksheet(name=“sheet表单的名字,不填写就默认为sheet1")
- worksheet.write_row( row, col, data, cell_format=None)
- worksheet.write_column(row, col, data, cell_format=None)
- worksheet.write_row("A1", 一行数据, 样式(非必填项))
- bold = workbook.add_format({'bold': 1})
- for row in range(len(data)): # 将数据插入excel中
- if row == 0:
- print(data[row])
- worksheet.write_row("A" + str(row+1), data[row], bold)
- worksheet.write_column()
- else:
- worksheet.write_row("A" + str(row+1), data[row])
第三步:生成图表
- area: Creates an Area (filled line) style chart.
- bar: Creates a Bar style (transposed histogram) chart.
- column: Creates a column style (histogram) chart.
- line: Creates a Line style chart.
- pie: Creates a Pie style chart.
- doughnut: Creates a Doughnut style chart.
- scatter: Creates a Scatter style chart.
- stock: Creates a Stock style chart.
- radar: Creates a Radar style chart.
- chart.add_series({
- 'categories': '=Sheet1!$A$1:$A$5',
- 'values': '=Sheet1!$B$1:$B$5',
- 'line': {'color': 'red’},
- 'name':'=各端BUG数汇总_图表!$A$3'
- })
- chart.add_series({
- 'categories': ['Sheet1', 0, 0, 4, 0],
- 'values': ['Sheet1', 0, 1, 4, 1],
- 'line': {'color': 'red'},
- 'name':['Sheet1', 0, 0],
- 'data_labels': {'value': True}
- })
- chart.add_series({
- 'categories': '=(Sheet1!$A$1:$A$9,Sheet1!$A$14:$A$25)',
- 'values': '=(Sheet1!$B$1:$B$9,Sheet1!$B$14:$B$25)',
- })
- chart.set_title({'name': ‘图标名字'})
- chart.set_style(10)
- chart.height=600
- chart.width=960
- worksheet.insert_chart('A7', chart)方法插入数据
- chartsheet = workbook.add_chartsheet()
- chartsheet.set_chart(chart)
- chart = workbook.add_chart({'type': 'column'})
- chart.add_series({
- 'categories': '=各端BUG数汇总_图表!$A$1:$' + dataarray.getrowname_end() + '$1',
- 'values': '=各端BUG数汇总_图表!$A$2:$' + dataarray.getrowname_end() + '$2',
- 'name':'=各端BUG数汇总_图表!$A$3'
- })
- chart.set_title({'name': '各端BUG数汇总'})
- chart.set_style(10)
- worksheet.insert_chart('B10', chart)

- column_chart = workbook.add_chart({'type': 'column'})
- column_chart.add_series({
- 'name': '=Sheet1!B1',
- 'categories': '=Sheet1!A2:A7',
- 'values': '=Sheet1!B2:B7',
- })
- line_chart = workbook.add_chart({'type': 'line'})
- line_chart.add_series({
- 'name': '=Sheet1!C1',
- 'categories': '=Sheet1!A2:A7',
- 'values': '=Sheet1!C2:C7',
- })
- column_chart.combine(line_chart)
- column_chart.set_table({'show_keys': True})

python生成Excel图表(通过xlsxwriter)的更多相关文章
- JAVA生成EXCEL图表
跟据客户的要求,需要开发一套包括图形的报表,还需要导出WORD 图表需要这样: 这样: 这样: 还有这样: 接下来是实现思路: 以往用的最多的就是JFreechart,手上也有实现各种图形的资源,但是 ...
- 使用poi和jfreechart生成excel图表图片
最近项目在频繁的操作excel,里边涉及到很多和图表有关的东西.有时候需要使用java操作excel自带的图标,比较复杂的我们都是使用excel模板的形式实现. 除此之外,也有一些功能只需要生成对应的 ...
- Python绘制Excel图表
今天讲解下如何使用Python绘制各种Excel图表,下面我们以绘制饼状图.柱状图.水平图.气泡图.2D面积图.3D面积图为例来说明. import openpyxlfrom openpyxl imp ...
- python生成excel测试数据
在功能测试时,经常会测到excel文件导入导出的功能,导入与导出时,需要测试系统单次导入大批量数据时是否正常, 如果系统承受不起太大的数据导入,则需要开发限制单次导入的数量,以防止系统服务异常.大量的 ...
- 小兴趣:用python生成excel格式座位表
脚本分两个文件: 1.生成二维随机列表:GenerateLocaltion.py 2.将列表导入excel文件:CreateExcel.py 先上GenerateLocaltion.py: impor ...
- 是用Epplus生成Excel 图表
1. 前言 这是我最近项目刚要的需求,然后在网上找了半天的教材 但是很不幸,有关于Epplus的介绍真的太少了,然后经过了我的不断研究然后不断的采坑,知道现在看到Excel都想吐的时候,终于成功的 ...
- 使用Epplus生成Excel 图表
1. 前言 这是我最近项目刚要的需求,然后在网上找了半天的教材 但是很不幸,有关于Epplus的介绍真的太少了,然后经过了我的不断研究然后不断的采坑,知道现在看到Excel都想吐的时候,终于成功的 ...
- python生成excel格式座位表
脚本分两个文件: 1.生成二维随机列表:GenerateLocaltion.py 2.将列表导入excel文件:CreateExcel.py 先上GenerateLocaltion.py: impor ...
- 【JAVA】POI生成EXCEL图表(柱状图、折线等)
1.使用excel工具自带的图形工具创建一个图: 2.绑定数据区域: 3.数据区域绑定完成,我们要做的就是将数据写入到数据区域中: 4.标记 5.POI 引入包 <!-- https://mvn ...
随机推荐
- 学习excel的使用技巧一空格替换为0
问题1 把excel表格中的空格 填充为0 方法1 选中CDE列 CRTL+F 查找空 替换为0 方法2 选中CDE列 CRTL+G 打开定位 点击条件定位 选择空值 点击确定 然后在 ...
- 30.Scrapy 对接 Selenium
Scrapy 对接 Selenium(参考代码网址,https://github.com/Python3WebSpider/ScrapySeleniumTest) 此文就是参考书上的代码拿下来跑,作为 ...
- EA Data Modeling 显示别名设置
1.设置 2.效果
- GPUImage中亮度调整的实现——GPUImageBrightnessFilter
亮度brightness其实是对RGB的调整,RGB值越大,效果越亮:反之则越暗. GPUImage中提供了对图像亮度调整的Filter,其核心代码如下(fragment): varying high ...
- 2018年1月21日--2月4日 NAS
二十号去比赛时,与同事闲聊时说起家庭服务器,后来搜到nas(网络附着存储器),找到freenas,突然觉得很有用,手机拍了大量的照片视频,存储在电脑,已经换过几次硬盘了,对于这些珍贵的资料,万一硬盘坏 ...
- linux 下使用 curl post
命令: curl -X POST -d @/etc/lazada/lazada_tracking.txt http://localhost:8080/booking/rs/LazadaServic ...
- leetcode993
public class Node { public int CurNode; public int FatherNode; public int Layer; } public class Solu ...
- Appium-We wanted {"required":["value"]} and you sent ["text","sessionId","id","value"]
APK 链接:https://pan.baidu.com/s/17oeTM1qA0QjPBqLh6pS0Yg 提取码:s9ru # coding:utf-8from appium import web ...
- django日志配置
直接参考这篇,很详细:https://www.cnblogs.com/changqing8023/p/9639769.html 补充一点:日志文件打开时,中文乱码,要在handler中设置编码格式,' ...
- element el-upload组件获取文件名
组件的连接:http://element-cn.eleme.io/#/zh-CN/component/upload 需求:点x按钮,获取文件名传到后端服务,把文件从服务器删除 分析: 仔细看文档,会发 ...