Python应用-Excel图表制作

Python应用-Excel图表制作

在实际应用过程中会经常使用excel工具来处理一些数据,或者让里面的数据可视化(图标形式),如果是一个两个那么手动就能处理,如果成千上万的那么手动处理的方式就显得很吃力了。针对excel的处理可通过Python来实现,本文介绍如何使用Python来操作excel文件

环境介绍

PC环境:Windows
Python版本:Python3.6
IDE环境:PyCharm
使用第三方库:openpyxl
源码下载:http://03.xiaolinjun.top/0c4-0.zip

使用PyCharm建立Python工程

在桌面新建文件夹:python_excel,双击打开PyCharm,点击Create New Project新建Python工程,选择工程目录文件夹为刚新建的python_excel,使用新的虚拟环境,选择Python解释器为Python3.6,如下图

工程建立完成后,在工程目录下新建文件:excel.py

使用PyCharm安装openpyxl库

在PyCharm中安装openpyxl库。点击菜单栏File–>Settings选择Project:python_excel下的Project Interpreter,然后点击右边的小加号,在弹出的窗口中搜索需要安装的库,然后点击安装

代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
from openpyxl import Workbook
from openpyxl.chart import BarChart, Series, Reference


def excel_make():

wb = Workbook(write_only=True)
ws = wb.create_sheet()

rows = [
('Number', 'Batch 1', 'Batch 2'),
(2, 10, 30),
(3, 40, 60),
(4, 50, 70),
(5, 20, 10),
(6, 10, 40),
(7, 50, 30),
]

for row in rows:
ws.append(row)

chart1 = BarChart()
chart1.type = "col"
chart1.style = 10
chart1.title = "Bar Chart"
chart1.y_axis.title = 'Test number'
chart1.x_axis.title = 'Sample length (mm)'

data = Reference(ws, min_col=2, min_row=1, max_row=7, max_col=3)
cats = Reference(ws, min_col=1, min_row=2, max_row=7)
chart1.add_data(data, titles_from_data=True)
chart1.set_categories(cats)
chart1.shape = 4
ws.add_chart(chart1, "A10")

from copy import deepcopy

chart2 = deepcopy(chart1)
chart2.style = 11
chart2.type = "bar"
chart2.title = "Horizontal Bar Chart"

ws.add_chart(chart2, "G10")

chart3 = deepcopy(chart1)
chart3.type = "col"
chart3.style = 12
chart3.grouping = "stacked"
chart3.overlap = 100
chart3.title = 'Stacked Chart'

ws.add_chart(chart3, "A27")

chart4 = deepcopy(chart1)
chart4.type = "bar"
chart4.style = 13
chart4.grouping = "percentStacked"
chart4.overlap = 100
chart4.title = 'Percent Stacked Chart'

ws.add_chart(chart4, "G27")

wb.save("bar.xlsx")

if __name__ == '__main__':
excel_make()

实现效果

运行代码,可以看到生成一个bar.xlsx文件,打开后可以看到根据数据生成的四种不同图标

openpyxl使用参考:https://openpyxl.readthedocs.io/en/stable/

本文标题:Python应用-Excel图表制作

文章作者:LGG001

发布时间:2018年09月29日 - 22:09

最后更新:2019年01月20日 - 23:01

原始链接:http://yoursite.com/2018/09/29/Python应用-Excel图表制作/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------本文结束感谢您的阅读-------------
Thank You For Your Approval !