学会python——在Excel中生成图表数据(python实例十五)

目录

1.认识Python

2.环境与工具

[2.1 python环境](#2.1 python环境)

[2.2 Visual Studio Code编译](#2.2 Visual Studio Code编译)

3.生成表格数据

[3.1 代码构思](#3.1 代码构思)

[3.2 代码示例](#3.2 代码示例)

4.绘制图表

[4.1 代码构思](#4.1 代码构思)

[4.2 代码示例](#4.2 代码示例)

5.总结


1.认识Python

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象脚本语言

Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字或标点符号,它具有比其他语言更有特色的语法结构。

2.环境与工具

2.1 python环境

在Windows上使用命令行窗口查看所安装的python版本

复制代码
python --version

2.2 Visual Studio Code编译

Visual Studio Code是一款由微软开发且跨平台的免费源代码编辑器。该软件以扩展的方式支持语法高亮、代码自动补全、代码重构功能,并且内置了命令行工具和Git 版本控制系统。

3.生成表格数据

3.1 代码构思

使用Openpyxl库模块,向Excel中写入数据。

3.2 代码示例

复制代码
import openpyxl

# 创建一个新的工作簿
wb = openpyxl.Workbook()

# 获取活动的工作表
sheet = wb.active

# 设置工作表名称
sheet.title = "学生成绩"

# 添加标题行
sheet.append(["姓名", "数学", "英语", "科学"])

# 添加学生成绩数据
data = [
    ["Alice", 85, 78, 92],
    ["Bob", 89, 94, 85],
    ["Charlie", 95, 88, 91],
    ["David", 70, 76, 80],
    ["Eva", 88, 84, 87],
    ["Frank", 92, 90, 94]
]

for row in data:
    sheet.append(row)

# 保存工作簿
wb.save('wmp_score.xlsx')

4.绘制图表

4.1 代码构思

使用Openpyxl库模块,通过指定表格数据,指定绘图区域等来绘制图形。

4.2 代码示例

复制代码
import openpyxl
from openpyxl.chart import BarChart, Reference

# 打开 Excel 工作簿
wb = openpyxl.load_workbook('wmp_score.xlsx')
# 打开当前活动的 sheet
sheet = wb.active
# 选中在柱形图上要显示的数据
sel_data = Reference(sheet, min_col=2, min_row=2, max_col=4, max_row=7)
# 设置 x 轴数据
titlex = Reference(sheet, min_col=1, min_row=2, max_row=7)
# 生成柱形图对象
chart_obj = BarChart()
# 设置柱形图为纵向柱状
chart_obj.type = 'col'
# 设置柱形图显示样式
chart_obj.style = 9
# 设置柱形图标题
chart_obj.title = '学生成绩'
# 设置 y 轴标题
chart_obj.y_axis.title = '成绩'
# 设置 x 轴标题
chart_obj.x_axis.title = '姓名'
# 添加数据到柱形图,titles_from_data=True 表示从数据中获取标题
chart_obj.add_data(sel_data, titles_from_data=True)
# 设置类别(x轴)数据
chart_obj.set_categories(titlex)
# 将柱形图添加到 sheet 中,位置为 A9
sheet.add_chart(chart_obj, 'A9')
# 保存工作簿
wb.save('wmp_score.xlsx')

5.总结

使用Openpyxl可以很简单的编辑Excel文件内容,实现通过Python语言编写Excel内容,但是需要保证Excel可以在本机正常使用哦!

相关推荐
北京_宏哥几秒前
🔥PC端自动化测试实战教程-2-pywinauto 启动PC端应用程序 - 上篇(详细教程)
前端·windows·python
_x_w9 分钟前
【12】数据结构之基于线性表的排序算法
开发语言·数据结构·笔记·python·算法·链表·排序算法
不爱学英文的码字机器16 分钟前
Rust 的征服:从系统编程到全栈开发的 IT 新宠
开发语言·后端·rust
grrrr_122 分钟前
【ctfplus】python靶场记录-任意文件读取+tornado模板注入+yaml反序列化(新手向)
python·web安全·tornado
ππ记录42 分钟前
python面试技巧
python·python面试·python面试技巧·python面试能力
csdn_aspnet1 小时前
windows 安装 pygame( pycharm)
python·pycharm·pygame
这里有鱼汤1 小时前
Python自动化神器Playwright:让浏览器乖乖听话的终极指南!
后端·爬虫·python
海天一色y1 小时前
Pycharm(十三)容器类型的公共运算符和公共方法
ide·python·pycharm
这里有鱼汤1 小时前
Python多线程编程,你必须掌握的并发编程技巧!
python
q567315231 小时前
用Dispatch库的爬虫程序爬取图片网站
开发语言·爬虫·python·scrapy