Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何将 Matplotlib 可视化 插入到 Excel 表格中?

如何将 Matplotlib 可视化 插入到 Excel 表格中?

作者头像
朱小五
发布于 2022-04-11 11:54:21
发布于 2022-04-11 11:54:21
4K00
代码可运行
举报
文章被收录于专栏:凹凸玩数据凹凸玩数据
运行总次数:0
代码可运行

大家好,我是小五🧐

在生活中工作中,我们经常使用Excel用于储存数据,Tableau等BI程序处理数据并进行可视化。我们也经常使用R、Python编程进行高质量的数据可视化,生成制作了不少精美优雅的图表。

但是如何将这些“优雅”延续要Excel中呢?Python绘图库有很多,我们就还是拿最基本的Matplotlib为例。

今天就为大家演示一下,如何将Matplotlib绘制的可视化图片,插入到Excel中

其他可视化库生成的图片,也同样适用

数据可视化

目前Python用来操作Excel的库:xlrd、xlwt、openpyxl、xlwings等等。在本文中,我们会使用xlwings模块来控制Excel插入图表。

首先,使用Pandas模块读取数据,并随机预览5行。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd

df = pd.read_excel('可视化数据.xlsx')
df.sample(5)

输出:

使用Python读取数据后,便可以matplotlib进行数据可视化了。此处使用了《Python 数据可视化之美》[1]中的一个例子。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import numpy as np
from pandas.plotting import radviz
import matplotlib.pyplot as plt

angle = np.arange(360)/180*3.14159
x = np.cos(angle)
y = np.sin(angle)

figure = plt.figure(figsize=(3.5, 3.5), dpi=100)
ax = radviz(df, 'variety', color=['#FC0000', '#F0AC02', '#009E88'], edgecolors='k', marker='o', s=34, linewidths=1)
plt.plot(x, y, color='gray')
plt.axis('off')
plt.legend(loc="center", bbox_to_anchor=(1.1, 0, 0, 0.4), edgecolor='none', facecolor='none', title='Group')

输出:

上面绘制得到的图形是RadViz图(径向坐标可视化)。Radviz可视化原理[2]是将一系列多维空间的点通过非线性方法映射到二维空间的可视化技术,是基于圆形平行坐标系的设计思想而提出的多维可视化方法。

图表插入Excel

在xlwings库中,想要实现图表插入Excel里,主要靠的是picture对象的add()方法。

它有几个重要的参数,如下表所示:

参数名

释义用法

image

文件路径或Matplotlib图形对象。

left

以磅为单位距离左侧边缘的位置,默认为0。

top

以磅为单位距离上侧边缘的位置,默认为0。

width

设置图宽。

height

设置图高。

name

Excel图片名称。如果未提供,则默认为Excel标准名称。

update

替换更新图片。

scale

缩放尺度。

在交互式环境中输入如下命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import xlwings as xw

app = xw.App(visible=False, add_book=False)
wb = app.books.open('可视化数据.xlsx')
sheet = wb.sheets[0]  # 选择第1个工作表
sheet.pictures.add(figure)  # 插入图表

wb.save("可视化数据-新.xlsx")
wb.close()
app.quit()

在上述代码中,其实关键代码就一行,其他的代码都是打开、打开、打开,关闭、关闭、关闭。这是因为xlwings想要直接操作工作表中的单元格,需要经过多重结构,具体如下图所示。

最后,打开原本的Excel表格,发现matplotlib绘制的图表已经与数据放在了一起。

这样,我们就实现了将Matplotlib绘制的可视化图片插入到Excel中。

如果你对今天的分享感兴趣,想获得本文的代码+数据 动手试一试。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 凹凸数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
xlwings,让excel飞起来!
excel已经成为必不可少的数据处理软件,几乎天天在用。python有很多支持操作excel的第三方库,xlwings是其中一个。
派大星的数据屋
2022/04/02
2.6K0
xlwings,让excel飞起来!
超赞!你绘制的Matplotlib图,可以直接嵌入到Excel中了!
Matplotlib应该是Python中最基础、最常用的Python绘图库!大部分利用Python进行数据分析的人应该都用过,这不是本章的重点,我也就不再赘述。
快学Python
2021/08/09
2.8K2
你们都用Python实现了哪些办公自动化?
Python办公自动化主要是批量化、自动化、定制化解决数据问题,目前主要分为三大块:自动化office、自动化机器人、自动化数据服务。
程序员小新
2021/12/18
1K0
用 Python 进行办公自动化都需要学习什么知识呢?
Python 自动化办公,无外乎就是 excel,ppt,word,再加上数据分析、爬虫等技能
周萝卜
2023/08/21
3220
用 Python 进行办公自动化都需要学习什么知识呢?
Python让Excel飞起来:使用Python xlwings实现Excel自动化
本文将向你展示如何使用Python xlwings库自动化Excel。毋庸置疑,Excel是一款非常棒的软件,具有简单直观的用户界面,而Python是一种强大的编程语言,在数据分析方面非常高效。xlwings就像胶水一样,将两者连接到一起,让我们能够同时拥有两者最好的一面。
fanjy
2021/11/10
11.3K0
Python让Excel飞起来:使用Python xlwings实现Excel自动化
我用Python操作Excel的两种主要工具
Python操作Excel分为两个主要形式,读写和交互式操作,可以用不同的第三方工具。
派大星的数据屋
2024/04/12
2780
我用Python操作Excel的两种主要工具
Python 自动化办公实战:Excel 数据处理与图表生成全流程
在现代办公中,数据处理已是日常,但手动处理大量 Excel 文件,不仅效率低,还易出错。
用户11690575
2025/06/10
1470
Python让Excel飞起来—批量进行数据分析
corr()函数默认计算的是两个变量之间的皮尔逊相关系数。该系数用于描述两个变量间线性相关性的强弱,取值范围为[-1,1]。系数为正值表示存在正相关性,为负值表示存在负相关性,为0表示不存在线性相关性。系数的绝对值越大,说明相关性越强。- 上表中第1行第2列的数值0.982321,表示的就是年销售额与年广告费投入额的皮尔逊相关系数,其余单元格中数值的含义依此类推。需要说明的是,上表中从左上角至右下角的对角线上的数值都为1,这个1其实没有什么实际意义,因为它表示的是变量自身与自身的皮尔逊相关系数,自然是1。- 从上表可以看到,年销售额与年广告费投入额、成本费用之间的皮尔逊相关系数均接近1,而与管理费用之间的皮尔逊相关系数接近0,说明年销售额与年广告费投入额、成本费用之间均存在较强的线性正相关性,而与管理费用之间基本不存在线性相关性。前面通过直接观察法得出的结论是比较准确的。- 第2行代码中的read_excel()是pandas模块中的函数,用于读取工作簿数据。3.5.2节曾简单介绍过这个函数,这里再详细介绍一下它的语法格式和常用参数的含义。- read_excel(io,sheet_name=0,header=0,names=None,index_col=None,usecols=None,squeeze=False,dtype=None)
润森
2022/09/22
6.6K0
Python让Excel飞起来—批量进行数据分析
xlwings自动化帮「房东」生成房租单!
房东将整栋楼各房间的应缴房租详情用一个excel表记录了下来,现在需要给每个房间都以图片或excel表形式发送一个房租单。
龙哥
2022/04/12
1.5K0
xlwings自动化帮「房东」生成房租单!
xlwings:在Excel中集成Python
Github地址:https://github.com/xlwings/xlwings 在现代数据分析和报表生成中,Microsoft Excel仍然是一款非常流行和强大的工具。与此同时,Python作为一种高级编程语言,具备出色的数据处理和分析能力。那么,有没有一种方法可以将Excel和Python完美结合,以发挥它们各自的优势?答案是肯定的,而这个方法的关键就是xlwings。本文将介绍xlwings的基本概念、使用方法以及提供丰富的示例代码,以帮助大家充分利用xlwings来处理Excel数据。 xlwings是一个用于在Excel中集成Python的强大工具。它允许你在Excel中调用Python函数,将Python脚本嵌入到Excel工作簿中,以便在Excel中进行数据处理、分析和可视化。xlwings的目标是将Excel和Python进行无缝集成,可以充分利用两者的强大功能。
luckpunk
2025/01/18
2900
新手也能上手的 Python 数据分析与可视化教程:从 Excel 到图表一步步教你做代码操作可视化图表
本教程面向零基础用户,手把手教你如何使用 Python(Pandas、Matplotlib、Seaborn)从 Excel 数据导入、清洗到多维度分析与可视化,覆盖环境搭建、数据预处理、分组统计、折线图、柱状图、饼图、散点图、箱线图等常见图表绘制技巧,并演示结果导出与报告生成全流程。无论你是刚接触 Python 数据分析,还是想提升 Excel 报表处理效率,都能通过本指南快速上手,实现“Excel → Python 代码操作 →可视化图表”一站式学习,掌握现代化数据分析与可视化方法。
猫头虎
2025/06/02
1.2K0
新手也能上手的 Python 数据分析与可视化教程:从 Excel 到图表一步步教你做代码操作可视化图表
Python实现办公自动化的数据可视化与报表生成
引言:在现代办公环境中,数据处理和报表生成是一项重要的任务。然而,手动处理大量数据和生成报表是一项繁琐且容易出错的工作。幸运的是,Python提供了强大的工具和库,可以帮助我们实现办公自动化,从而提高工作效率和准确性。本文将高效介绍如何使用Python进行数据可视化和报表生成,让您的办公工作更加顺利。
小白学大数据
2023/07/19
4920
【愚公系列】2023年07月 Python自动化办公之xlwings操作excel
xlwings比起xlrd、xlwt和xlutils,xlwings可豪华多了,它具备以下特点:
愚公搬代码
2025/05/28
2080
【愚公系列】2023年07月 Python自动化办公之xlwings操作excel
看了这个总结,其实 Matplotlib 可视化,也没那么难!
编辑 | JackTian 来源 | 杰哥的IT之旅(ID:Jake_Internet) 转载请联系授权(微信ID:Hc220066)
杰哥的IT之旅
2020/09/22
1.2K0
看了这个总结,其实 Matplotlib 可视化,也没那么难!
Python自动化办公-让 Excel 飞起来
Python 操作 Excel 可能是自动化办公最火热的需求了,看一看公众号文章底部的视频广告就知道了,里面尽是一些 5 分钟搞定 excel,将数据生成漂亮的图表。
somenzz
2021/08/19
2.2K0
Python办公自动化之Excel做表自动化:全网最全,看这一篇就够了!
官方文档:https://xlrd.readthedocs.io/en/latest/
Python小二
2020/09/08
8K0
Python办公自动化之Excel做表自动化:全网最全,看这一篇就够了!
可能是全网最完整的 Python 操作 Excel库总结!
在之前的办公自动化系列文章中,我已经对Python操作Excel的几个常用库openpyxl、xlrd/xlwt、xlwings、xlsxwriter等进行了详细的讲解。
小F
2021/03/18
9.6K0
可能是全网最完整的 Python 操作 Excel库总结!
Python数据可视化大全:Matplotlib、Seaborn、Bokeh和Plotly实战指南
数据可视化是数据科学和分析中不可或缺的一部分,而Python中的Matplotlib和Seaborn库为用户提供了强大的工具来创建各种可视化图表。本文将介绍如何使用这两个库进行数据可视化,并提供一些实用的代码示例和解析。
一键难忘
2024/04/18
2.4K0
数据可视化:认识Matplotlib
数据经过NumPy和Pandas的计算,最终得到了我们想要的数据结论,但是这些数据结论并不直观,所以想要把数据分析的结论做到可视化,让任何其他人看起来毫无压力,那么Matplotlib将派上用场。
马拉松程序员
2023/09/02
4330
数据可视化:认识Matplotlib
Python 库 xlwings 操作 Excel 文档
每个扩展库的功能都有其侧重点,根据所需要的功能,选择所需的扩展库即可。这里主要介绍通过 xlwings 对 Excel 文件进行操作。
keinYe
2020/03/18
3.6K1
推荐阅读
相关推荐
xlwings,让excel飞起来!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验