Advertisement

python将excel表数据可视化,python对excel数据可视化

阅读量:

本文旨在探讨如何利用Python语言处理Excel文件及其可视化处理方法,并详细阐述了使用Python对Excel表格进行可视化分析的技术与应用。通过本文的介绍与分享,我们希望能够为读者提供有价值的技术参考与学习指导,并邀请大家持续关注我们的网站以获取更多相关信息。

1. python操作Excel

python操作Excel有几种module可以支持(xlrd,xlwt,xlutils(openpyxl,xlsxwriter)),本文主要采用xlsxwriter这一module,其官方下载地址为:https://www.xlsxwriter.com/文档中心/index.html#GettingStarted.该软件具备在 Microsoft Office Excel 2007及以后版本中的各个工作表中编写文本数据的能力,并支持插入超链接Python学习入门教程.文章涉及的主要类包括Workbook.Worksheet.Chart等对象,用于完成对Excel表格的数据录入以及绘制折线图等常见图表类型

1.1 xlsxwriter模块介绍

1.1.1 Workbook类

Workbook是xlsxwriter模块的核心组件,在处理Excel文件时需要依赖于这个核心组件来完成各种操作;它代表了在Excel中呈现的所有电子表格信息。

函数名

功能

返回值

备注

Workbook(filename[, options])

构造函数--根据传入的文件名创建Workbook对象

Workbook对象

add_worksheet([name])

为excel文件添加一个worksheet

worksheet对象

不指定名字默认为sheet1、sheet2...

add_format([properties])

创建一个format对象

格式化对象

add_chart(options)

创建一个Chart对象

Chart对象

close()

关闭打开的xlsx文件并进行写入

1.1.2 Worksheet类

Worksheet类代表一个电子表格文档,在该类中执行对单元格的值赋值与格式设置,并完成表格显示样式与结构的调整。

函数名

功能

返回值

备注

write_row(row, col, data[, cell_format])

以某个单元格作为起始写入行数据

0--成功 其他--失败

可以通过(row,col)来索引单元格,也可以通过'A1'、'A2'的形式

write_column(row, col, data[, cell_format])

以某个单元格作为起始写入列数据

0--成功 其他--失败

同上

insert_chart(row, col, chart[, options])

在worksheet中插入一个chart

0--成功 -1--索引越界

(row, col)用于指定chart的显示位置

1.1.3 Chart类

工作表图表对象是在xlsxwriter库中用于操作图表的对象,并通过workbook.add_chart函数来创建该对象

函数名

功能

返回值

备注

add_series(options)

向图表中添加数据序列

set_title(options)

设置图表标题

set_x_axis(options)

设置X轴

set_y_axis(options)

设置Y轴

set_style(style_id)

设置图表样式类型

1.2 excel写入及绘图

1.2.1 折线图

-- coding:utf-8 --

import xlsxwriter

创建一个excel

workbook = xlsxwriter.Workbook("chart_line.xlsx")

创建一个sheet

worksheet = workbook.add_worksheet()

自定义样式,加粗

bold = workbook.add_format({'bold': 1})

--------1、准备数据并写入excel---------------

向excel中写入数据,建立图标时要用到

headings = ['Version', '1.0.27', '1.0.29', '1.0.30', '1.0.31']

data = [

['1', '-1', '-2', '-3', '-4', '-5'],

[10, 40, 50, 20, 30, 50],

[20, 60, 40, 10, 40, 30],

[30, 40, 60, 10, 50, 10],

[40, 30, 55, 15, 30, 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])

worksheet.write_column('D2', data[3])

worksheet.write_column('E2', data[4])

--------2、生成图表并插入到excel---------------

创建一个柱状图(line chart)

chart_col = workbook.add_chart({'type': 'line'})

配置第1个系列数据

chart_col.add_series({

这里的Sheet1是默认的值

'name': '=Sheet1!B1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!B2:B7',

'line': {'color': 'red'},

})

配置第2个系列数据

chart_col.add_series({

'name': '=Sheet1!C1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!C2:C7',

'line': {'color': 'yellow'},

})

配置第二个系列数据

chart_col.add_series({

'name': '=Sheet1!D1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!D2:D7',

'line': {'color': 'blue'},

})

配置第二个系列数据

chart_col.add_series({

'name': '=Sheet1!E1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!E2:E7',

'line': {'color': 'green'},

})

设置图表的title 和 x,y轴信息

chart_col.set_title({'name': 'The dll return Analysis'})

chart_col.set_x_axis({'name': 'return value'})

chart_col.set_y_axis({'name': 'count'})

设置图表的风格

chart_col.set_style(1)

把图表插入到worksheet并设置偏移

worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})

关闭文件

workbook.close()

1108707-20190131235522751-291484069.png

1.2.2 柱状图

-- coding:utf-8 --

import xlsxwriter

创建一个excel

workbook = xlsxwriter.Workbook("chart_column.xlsx")

创建一个sheet

worksheet = workbook.add_worksheet()

自定义样式,加粗

bold = workbook.add_format({'bold': 1})

--------1、准备数据并写入excel---------------

headings = ['Version', '1.0.27', '1.0.29', '1.0.30', '1.0.31']

data = [

['1', '-1', '-2', '-3', '-4', '-5'],

[10, 40, 50, 20, 30, 50],

[20, 60, 40, 10, 40, 30],

[30, 40, 60, 10, 50, 10],

[40, 30, 55, 15, 30, 30]

]

写入表头

worksheet.write_row('A1', headings, bold)

写入数据

worksheet.write_column('A2', data[0], bold)

worksheet.write_column('B2', data[1])

worksheet.write_column('C2', data[2])

worksheet.write_column('D2', data[3])

worksheet.write_column('E2', data[4])

--------2、生成图表并插入到excel---------------

创建一个柱状图(column chart)

chart_col = workbook.add_chart({'type': 'column'})

配置第1个系列数据

chart_col.add_series({

sheet1是默认的值

'name': '=Sheet1!B1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!B2:B7',

'fill': {'color': 'red', 'transparency': 30},

})

配置第2个系列数据

chart_col.add_series({

'name': '=Sheet1!C1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!C2:C7',

'fill': {'color': 'blue', 'transparency': 30},

})

配置第3个系列数据

chart_col.add_series({

'name': '=Sheet1!D1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!D2:D7',

'fill': {'color': 'green', 'transparency': 30},

})

配置第4个系列数据

chart_col.add_series({

'name': '=Sheet1!E1',

'categories': '=Sheet1!A2:A7',

'values': '=Sheet1!E2:E7',

'fill': {'color': 'yellow', 'transparency': 30},

})

设置图表的title 和 x,y轴信息

chart_col.set_title({'name': 'The dll return Analysis'})

chart_col.set_x_axis({'name': 'return value'})

chart_col.set_y_axis({'name': 'count'})

设置图表的风格

chart_col.set_style(1)

把图表插入到worksheet以及偏移

worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})

workbook.close()

1108707-20190131235553629-1535143711.png

1.2.3 饼图

-- coding:utf-8 --

import xlsxwriter

创建一个excel

workbook = xlsxwriter.Workbook("chart_pie.xlsx")

创建一个sheet

worksheet = workbook.add_worksheet()

自定义样式,加粗

bold = workbook.add_format({'bold': 1})

--------1、准备数据并写入excel---------------

向excel中写入数据,建立图标时要用到

data = [

['1.0.27', '1.0.29', '1.0.30', '1.0.31'],

[32, 23, 18, 25],

]

写入数据

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 Counts',

'categories': '=Sheet1!A1:D1',

'values': '=Sheet1!A2:D2',

'points': [

{'fill': {'color': '#BC3FBC'}},

{'fill': {'color': '#0DAD48'}},

{'fill': {'color': '#D8B31C'}},

{'fill': {'color': 'gray'}},

],

})

设置图表的title 和 x,y轴信息

chart_col.set_title({'name': 'Bug Counts'})

设置图表的风格,excel内置48种图表样式

chart_col.set_style(25)

把图表插入到worksheet以及坐标位置

worksheet.insert_chart('B10', chart_col, {'x_offset': 25, 'y_offset': 10})

workbook.close()

1108707-20190131235621278-1873438904.png

2. python操作cvs文件

2.1 csv文件简介

其文件采用纯文本格式存储表格数据,广泛应用于程序之间的表格数据传输,如何能在Excel工作表中以清晰的结构呈现这些信息呢?此外,这些文件也可直接作为数据库中的原始数据导入使用。例如以下所示的格式结构

OcrVersion,OcrResult,TimeExpend

1.0.0.27,-5,33.61749870069975

1.0.0.27,1,124.42219042629038

1.0.0.27,1,86.97660413336142

1.0.0.27,1,97.52896716737031

1.0.0.27,-5,0.48869203305051956

1.0.0.27,-5,0.5020905159192068

1.0.0.27,-5,0.4943334995215487

2.2 python读写cvs文件

2.3 pandas读取cvs数据及可视化

3. 总结

全部评论 (0)

还没有任何评论哟~