学会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可以在本机正常使用哦!

相关推荐
qq. 280403398440 分钟前
js 原型链分析
开发语言·javascript·ecmascript
鹿衔`1 小时前
Flask入门
后端·python·flask
Elnaij1 小时前
从C++开始的编程生活(13)——list和浅谈stack、queue
开发语言·c++
开开心心_Every2 小时前
专业视频修复软件,简单操作效果好
学习·elasticsearch·pdf·excel·音视频·memcache·1024程序员节
一晌小贪欢5 小时前
【Python数据分析】数据分析与可视化
开发语言·python·数据分析·数据可视化·数据清洗
草莓火锅7 小时前
用c++使输入的数字各个位上数字反转得到一个新数
开发语言·c++·算法
j_xxx404_7 小时前
C++ STL:阅读list源码|list类模拟|优化构造|优化const迭代器|优化迭代器模板|附源码
开发语言·c++
DreamNotOver7 小时前
批量转换论文正文引用为上标
开发语言·论文上标
散峰而望7 小时前
C/C++输入输出初级(一) (算法竞赛)
c语言·开发语言·c++·算法·github
fie88897 小时前
基于MATLAB的狼群算法实现
开发语言·算法·matlab