Python怎么实现在Excel文件中写入图表
发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,这篇"Python怎么实现在Excel文件中写入图表"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一
千家信息网最后更新 2025年02月19日Python怎么实现在Excel文件中写入图表
这篇"Python怎么实现在Excel文件中写入图表"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"Python怎么实现在Excel文件中写入图表"文章吧。
先来看一下所需要的几个函数(这些函数都是通过工作簿执行出来的)。
函数名 | 说明 | 参数 |
---|---|---|
add_chart() | 创建图表对象 | {type:样式} |
add_series() | 定义需要展示的数据 | 字典 |
set_title() | 定义图表title | 字符串 |
add_series 参数
参数 | 说明 | 值 |
---|---|---|
categories | 展示的标题 | =Sheet1!$A$1:$A$4 Shert1:工作簿名称 $A1 : 1:1:A$4 表示从第A行的第一个值到第四个值去展示标题 |
values | 展示的数据 | =Sheet1!$B1 : 1:1:B$4 Shert1:工作簿名称 $B1 : 1:1:B$4 表示从第A行的第一个值到第四个值去展示标题 |
name | 表名 |
$A$1:$A$4 表示从第A行的第一个值到第四个值去展示标题
图表的样式
样式名 | 说明 |
---|---|
area | 区域样式表 |
bar | 条形样式表 |
column | 柱状样式表 |
line | 线条样式表 |
pie | 饼图样式表 |
doughnut | 圆环样式表 |
scatter | 散点样式表 |
stock | 库存样式表 |
rader | 雷达样式表 |
结合 study.xlsx 文件 将学生成绩以表图形式展示
这里继续使用上一章节的 "将项目中的 study.xlsx 文件的内容写入 write.xlsx" 的案例;
代码示例如下:
# coding:utf-8import xlsxwriterimport xlrd# excel = xlsxwriter.Workbook('write.xlsx') # 初始化 excel 对象# book = excel.add_worksheet('study') # 添加工作簿## title = ['姓名', '性别', '年龄', '成绩', '等级'] # 定义 write.xlsx 的首行内容## for index, data in enumerate(title): # for循环 利用枚举函数将 title 的内容写入 "write.xlsx" 的首行# book.write(0, index, data)# excel.close()def read(): # 定义一个 read 函数读取 "study.xlsx" 文件 result = [] excel = xlrd.open_workbook('study.xlsx') book = excel.sheet_by_name('学生手册') for i in book.get_rows(): content = [] for j in i: content.append(j.value) result.append(content) return resultdef write(content): # 定义一个 write 函数 将读取到 "study.xlsx" 的内容写入到 "write.xlsx" 文件 excel = xlsxwriter.Workbook('write.xlsx') book = excel.add_worksheet('study') for index, data in enumerate(content): print(data) for sub_index, sub_data in enumerate(data): # print(sub_index, sub_data) book.write(index, sub_index, sub_data) book1 = excel.add_worksheet('学生等级') # 定义 "学生等级" 工作簿 data = [ # 定义 data 列表 用以存放学生成绩所处等级与数量 ['优秀', '良好', '中', '差'], [15, 25, 55, 5] ] book1.write_column('A1', data[0]) # write_column() 函数,按行添加(即 A1 行添加 data 列表的 0 索引的内容) book1.write_column('B1', data[1]) chart = excel.add_chart({'type': 'column'}) # 定义图表样式为 柱状样式表 chart.add_series({ # 添加需要展示的数据 'categories': '=学生等级!$A1:$A4', 'values': '=学生等级!$B1:$B4', 'name': '成绩占比' }) chart.set_title({'name': '成绩占比图表'}) # 定义图表title book1.insert_chart('A10', chart) # 将 chart 放在 excel 表格对应工作簿的 A10 位置 excel.close()if __name__ == '__main__': result = read() write(result)
运行结果如下:
拓展:再试试饼状图与条形样式图
代码示例如下:
# coding:utf-8import xlsxwriterimport xlrd# excel = xlsxwriter.Workbook('write.xlsx') # 初始化 excel 对象# book = excel.add_worksheet('study') # 添加工作簿## title = ['姓名', '性别', '年龄', '成绩', '等级'] # 定义 write.xlsx 的首行内容## for index, data in enumerate(title): # for循环 利用枚举函数将 title 的内容写入 "write.xlsx" 的首行# book.write(0, index, data)# excel.close()def read(): # 定义一个 read 函数读取 "study.xlsx" 文件 result = [] excel = xlrd.open_workbook('study.xlsx') book = excel.sheet_by_name('学生手册') for i in book.get_rows(): content = [] for j in i: content.append(j.value) result.append(content) return resultdef write(content): # 定义一个 write 函数 将读取到 "study.xlsx" 的内容写入到 "write.xlsx" 文件 excel = xlsxwriter.Workbook('write.xlsx') book = excel.add_worksheet('study') for index, data in enumerate(content): print(data) for sub_index, sub_data in enumerate(data): # print(sub_index, sub_data) book.write(index, sub_index, sub_data) book1 = excel.add_worksheet('学生等级') # 定义 "学生等级" 工作簿 data = [ # 定义 data 列表 用以存放学生成绩所处等级与数量 ['优秀', '良好', '中', '差'], [15, 25, 55, 5] ] book1.write_column('A1', data[0]) # write_column() 函数,按行添加(即 A1 行添加 data 列表的 0 索引的内容) book1.write_column('B1', data[1]) chart = excel.add_chart({'type': 'column'}) # 定义图表样式为 柱状样式表 chart.add_series({ # 添加需要展示的数据 'categories': '=学生等级!$A1:$A4', 'values': '=学生等级!$B1:$B4', 'name': '成绩占比' }) chart.set_title({'name': '成绩占比图表'}) # 定义图表title book1.insert_chart('A10', chart) # 将 chart 放在 excel 表格对应工作簿的 A10 位置 chart = excel.add_chart({'type': 'bar'}) chart.add_series({ 'categories': '=学生等级!$A1:$A4', 'values': '=学生等级!$B1:$B4', 'name': '成绩占比' }) chart.set_title({'name': '成绩占比图表'}) book1.insert_chart('A25', chart) chart = excel.add_chart({'type': 'pie'}) chart.add_series({ 'categories': '=学生等级!$A1:$A4', 'values': '=学生等级!$B1:$B4', 'name': '成绩占比' }) chart.set_title({'name': '成绩占比图表'}) book1.insert_chart('A40', chart) excel.close()if __name__ == '__main__': result = read() write(result)
运行结果如下:
以上就是关于"Python怎么实现在Excel文件中写入图表"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
学生
样式
等级
图表
内容
成绩
函数
文件
工作
数据
标题
参数
对象
柱状
优秀
良好
代码
位置
名称
姓名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
北京网络安全家教
数据库关联删除数据
市场上的计算机网络技术
服务器等级管理是什么意思
创世神奇宝贝服务器手机版
济宁管理erp软件开发
江苏前端软件开发定制
服务器和台式运行内存通用吗
网络安全图标简笔画
网络安全知识竞赛策划
网络技术人员绩效考核方法
青芷柠源神奇宝贝服务器地址
信誉可靠的分布式数据库中间件
国网网络安全人员不足
数据库备份还原版本问题
数据库面试题证券公司
山东企业软件开发价格大全
开源网络安全技术
中国象棋软件开发代码
计算机网络技术智能楼宇方向
网络获取信息对网络安全的作用
服务器 操作系统
路由和网络技术
伊川软件开发报价
软件开发交付 源代码
游戏源码上传到服务器那个文件
安徽互联网软件开发费用
意识形态和网络安全方面
苹果x软件开发
西子奥的斯服务器按键图解