返回顶部
首页 > 资讯 > 后端开发 > Python >利用Python生成Excel炫酷图表
  • 802
分享到

利用Python生成Excel炫酷图表

2024-04-02 19:04:59 802人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录前言1.xlswriter库2.生成折线图3.生成柱状图4.生成饼图5.实战拓展前言 本文对python 自动化操作excel并生成图表,做了详细的分析和说明 我们先来看一下Py

前言

本文对python 自动化操作excel并生成图表,做了详细的分析和说明

我们先来看一下Python中能操作Excel的常用库对比

1.xlswriter库

XlsxWriter是一个用来写Excel2007和xlsx文件格式的python模块。它可以用来写文本、数字、公式并支持单元格格式化、图片、图表、文档配置、自动过滤等特性

优点:功能更多、文档高保真、扩展格式类型、更快并可配置

缺点:不能用来读取和修改excel文件

官方文档:xlsxwriter.readthedocs.io/

2.生成折线图

# -*- coding:utf-8 -*-

import xlsxwriter

# 创建一个excel
workbook = xlsxwriter.Workbook("chart_line.xlsx")
# 创建一个sheet
worksheet = workbook.add_worksheet()
# worksheet = workbook.add_worksheet("bug_analysis")

# 自定义样式,加粗
bold = workbook.add_fORMat({'bold': 1})

# --------1、准备数据并写入excel---------------
# 向excel中写入数据,建立图标时要用到
headings = ['Number', 'testA', 'testB']
data = [
    ['2017-9-1', '2017-9-2', '2017-9-3', '2017-9-4', '2017-9-5', '2017-9-6'],
    [10, 40, 50, 20, 10, 50],
    [30, 60, 70, 50, 40, 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])

# --------2、生成图表并插入到excel---------------
# 创建一个柱状图(line chart)
chart_col = workbook.add_chart({'type': 'line'})

# 配置第一个系列数据
chart_col.add_series({
    # 这里的sheet1是默认的值,因为我们在新建sheet时没有指定sheet名
    # 如果我们新建sheet时设置了sheet名,这里就要设置成相应的值
    'name': '=Sheet1!$B$1',
    'cateGories': '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$B$2:$B$7',
    'line': {'color': 'red'},
})

# 配置第二个系列数据
chart_col.add_series({
    'name': '=Sheet1!$C$1',
    'categories':  '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$C$2:$C$7',
    'line': {'color': 'yellow'},
})

# 配置第二个系列数据(用了另一种语法)
# chart_col.add_series({
#     'name': ['Sheet1', 0, 2],
#     'categories': ['Sheet1', 1, 0, 6, 0],
#     'values': ['Sheet1', 1, 2, 6, 2],
#     'line': {'color': 'yellow'},
# })

# 设置图表的title 和 x,y轴信息
chart_col.set_title({'name': 'The xxx site Bug Analysis'})
chart_col.set_x_axis({'name': 'Test number'})
chart_col.set_y_axis({'name':  'Sample length (mm)'})

# 设置图表的风格
chart_col.set_style(1)

# 把图表插入到worksheet并设置偏移
worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})

workbook.close()

3.生成柱状图

# -*- coding:utf-8 -*-

import xlsxwriter

# 创建一个excel
workbook = xlsxwriter.Workbook("chart_column.xlsx")
# 创建一个sheet
worksheet = workbook.add_worksheet()
# worksheet = workbook.add_worksheet("bug_analysis")

# 自定义样式,加粗
bold = workbook.add_format({'bold': 1})

# --------1、准备数据并写入excel---------------
# 向excel中写入数据,建立图标时要用到
headings = ['Number', 'testA', 'testB']
data = [
    ['2017-9-1', '2017-9-2', '2017-9-3', '2017-9-4', '2017-9-5', '2017-9-6'],
    [10, 40, 50, 20, 10, 50],
    [30, 60, 70, 50, 40, 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])

# --------2、生成图表并插入到excel---------------
# 创建一个柱状图(column chart)
chart_col = workbook.add_chart({'type': 'column'})

# 配置第一个系列数据
chart_col.add_series({
    # 这里的sheet1是默认的值,因为我们在新建sheet时没有指定sheet名
    # 如果我们新建sheet时设置了sheet名,这里就要设置成相应的值
    'name': '=Sheet1!$B$1',
    'categories': '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$B$2:$B$7',
    'line': {'color': 'red'},
})

# 配置第二个系列数据(用了另一种语法)
chart_col.add_series({
    'name': '=Sheet1!$C$1',
    'categories':  '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$C$2:$C$7',
    'line': {'color': 'yellow'},
})

# 配置第二个系列数据(用了另一种语法)
# chart_col.add_series({
#     'name': ['Sheet1', 0, 2],
#     'categories': ['Sheet1', 1, 0, 6, 0],
#     'values': ['Sheet1', 1, 2, 6, 2],
#     'line': {'color': 'yellow'},
# })

# 设置图表的title 和 x,y轴信息
chart_col.set_title({'name': 'The xxx site Bug Analysis'})
chart_col.set_x_axis({'name': 'Test number'})
chart_col.set_y_axis({'name':  'Sample length (mm)'})

# 设置图表的风格
chart_col.set_style(1)

# 把图表插入到worksheet以及偏移
worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})
workbook.close()

4.生成饼图

# -*- 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 = [
    ['closed', 'active', 'reopen', 'NT'],
    [1012, 109, 123, 131],
]

# 写入数据
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 Analysis',
    'categories': '=Sheet1!$A$1:$D$1',
    'values': '=Sheet1!$A$2:$D$2',
    'points': [
        {'fill': {'color': '#00CD00'}},
        {'fill': {'color': 'red'}},
        {'fill': {'color': 'yellow'}},
        {'fill': {'color': 'gray'}},
    ],

})

# 设置图表的title 和 x,y轴信息
chart_col.set_title({'name': 'Bug Analysis'})

# 设置图表的风格
chart_col.set_style(10)

# 把图表插入到worksheet以及偏移
worksheet.insert_chart('B10', chart_col, {'x_offset': 25, 'y_offset': 10})
workbook.close()

5.实战拓展

xlswriter新建并写入Excel

# 3.6.2 xlswriter新建并写入Excel
def fun3_6_2():
    # 创建Exce并添加sheet
    workbook = xlsxwriter.Workbook('demo.xlsx')
    worksheet = workbook.add_worksheet()

    # 设置列宽
    worksheet.set_column('A:A', 20)

    # 设置格式
    bold = workbook.add_format({'bold': True})

    # 添加文字内容
    worksheet.write('A1', 'Hello')

    # 按格式添加内容
    worksheet.write('A2', 'World', bold)

    # 写一些数字
    worksheet.write(2, 0, 123)
    worksheet.write(3, 0, 123.456)

    # 添加图片
    worksheet.insert_image('B5', 'demo.png')

    workbook.close()

以上就是利用Python生成Excel炫酷图表的详细内容,更多关于Python Excel图表的资料请关注编程网其它相关文章!

--结束END--

本文标题: 利用Python生成Excel炫酷图表

本文链接: https://lsjlt.com/news/140706.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 利用Python生成Excel炫酷图表
    目录前言1.xlswriter库2.生成折线图3.生成柱状图4.生成饼图5.实战拓展前言 本文对Python 自动化操作Excel并生成图表,做了详细的分析和说明 我们先来看一下py...
    99+
    2024-04-02
  • 利用Python绘制酷炫的3D地图
    目录1.重庆市3D地图2.中国3D地图一3.中国3D地图二4.中国3D地图三5.地球展示之前我们介绍了很多Python地图可视化的内容,本次主要介绍如何Python绘制3D地图,还是...
    99+
    2024-04-02
  • 使用css与js生成的唯美炫酷的图形树效果
    这篇文章主要介绍了使用css与js生成的唯美炫酷的图形树效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。效果图如下所示:在线演示:Here~给大家分享一个使用css与js生...
    99+
    2023-06-08
  • 学会这个炫酷图表利器pyecharts,还怕不被公司重用?
    目录一、安装二、导入模块三、柱状图四、饼状图五、折线图六、散点图七、图表合并八、词云九、地图十、总结一、安装 首先我们需要安装下pyecharts,通过pip指令直接安装即可。 pip install pyech...
    99+
    2022-06-02
    python pyecharts python可视化神器
  • 利用JavaScript制作一个酷炫的3D图片演示
    目录前言一、页面特效效果展示二、功能描述三、功能实现前言 对于学前端的小伙伴来说,吸引你们入坑的大都是一些炫酷的页面。但往往那些页面的源代码对初学的伙伴们都不太友好。今天给大家分享一...
    99+
    2024-04-02
  • 如何利用JavaScript制作一个酷炫的3D图片
    这篇文章将为大家详细讲解有关如何利用JavaScript制作一个酷炫的3D图片,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、页面特效效果展示注:上述效果图只是部分效果,原谅我还没有学会自制gif图!二...
    99+
    2023-06-29
  • JavaScript利用canvas实现炫酷的碎片切图效果
    目录前言需求分析实现过程坐标系切割绘制切割&渲染动画前言 今天分享一个炫酷的碎片式切图效果,这个其实在自己的之前的博客上有实现过,本人觉得这个效果还是挺炫酷的,这次还是用我们...
    99+
    2022-11-13
    JavaScript canvas碎片切图效果 JavaScript canvas 碎片切图 JavaScript canvas 切图
  • Excel如何使用F11快速生成图表
    这篇文章主要介绍了Excel如何使用F11快速生成图表,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。F11快速生成图表如果有这样一批数据,如何使用快捷键,一次性生成一张图表呢...
    99+
    2023-06-27
  • CSS中怎么利用柏林噪声绘制炫酷图形
    这篇文章主要介绍了CSS中怎么利用柏林噪声绘制炫酷图形的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS中怎么利用柏林噪声绘制炫酷图形文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • 如何用Python快速制作美观炫酷且有深度的图表
    这期内容当中小编将会给大家带来有关如何用Python快速制作美观炫酷且有深度的图表,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。生活阶梯(幸福指数)与人均GDP(金钱)正相关的正则图三种用Python可视...
    99+
    2023-06-16
  • python怎么用matplotlib生成图表
    要使用 matplotlib 在 python 中生成图表,请遵循以下步骤:安装 matplotlib 库。导入 matplotlib 并使用 plt.plot() 函数生成图表。自定义...
    99+
    2024-05-05
    python 可视化数据 排列
  • 利用Python实现生成颜色表(colorchart)
    目录前言格子颜色表渐变色带前言 在做色彩相关的算法分析时候,经常需要使用规则的颜色表来进行辅助。下面用python(numpy和opencv)来生成颜色表并保存为图片。 有两种类型:...
    99+
    2023-05-12
    Python生成颜色表 Python颜色表 Python颜色
  • java poi生成excel折线图、柱状图、饼图、动态列表
    实现效果   测试类 public class ChartTest { // 开始行 public static int chartRowStart = 3; // 结束行 public static int ...
    99+
    2023-09-04
    excel java 后端
  • 利用Python为iOS10生成图标和截屏
    简介 这两天更新完Xcode8之后发现Xcode对图标的要求又有了变化,之前用的一个小应用“IconKit”还没赶上节奏,已经不能满足Xcode8的要求了。 于是就想起来用Python自己做个脚本来生成图...
    99+
    2022-06-04
    图标 Python
  • 怎么使用Python根据原始Excel表格批量生成目标Excel表格
    本文小编为大家详细介绍“怎么使用Python根据原始Excel表格批量生成目标Excel表格”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用Python根据原始Excel表格批量生成目标Excel表格”文章能帮助大家解决疑惑,下面跟...
    99+
    2023-07-06
  • Python怎么生成表格图片
    本篇内容介绍了“Python怎么生成表格图片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!pytab首先安装pip install...
    99+
    2023-06-29
  • 利用Python 生成hash值
    一、介绍 如果在Python中需要对用户输入的密码或者其他内容进行加密,首选的方法是生成hash值。 在Python中可以利用二个模块来进行: - crypt - hashlib 二、crypt (一)crypt的主要方法和...
    99+
    2023-01-31
    Python hash
  • GoLand利用plantuml生成UML类图
    目录步骤1. 安装goplantuml2. 将goplantuml集成到GoLand3. 安装GoLand的PlantUML插件4. 安装和集成GraphvizGoLand内置的Di...
    99+
    2024-04-02
  • python生成带有表格的图片
    因为工作中需要,需要生成一个带表格的图片 例如: 直接在html中写一个table标签,然后单独把表格部分保存成图片 或者是直接将excel中的内容保存成一个图片 刚开始的思路,是直接生成一个带有table标签的html文件,然后...
    99+
    2023-01-31
    表格 图片 python
  • 利用Python批量生成任意尺寸的图片
    实现效果 通过源图片,在当前工作目录的/img目录下生成1000张,分别从1*1到1000*1000像素的图片。 效果如下: 目录结构 实现示例 # -*- coding: utf-8 -*- im...
    99+
    2022-06-04
    批量 尺寸 图片
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作