作者:小z

     来源:数据不吹牛

大家好,我是小z

这几天,群里有些小伙伴被一个奇怪的需求困住:

“pyecharts作图既炫酷,又交互。但是,这个炫酷的效果往往只存在于分析师自己的编辑器中,充其量也就是生成一个html文件来嗨一嗨,有没有什么办法能够嵌入PPT呢?

“为什么想要嵌入PPT呢?”我有点疑惑。

“对于分析师来说,PPT才是和业务沟通的主战场,当然了,更是装X的主战场。有时候,一张炫酷的图,能让会议室所有的人喊一声牛X!”

“有啊!截图放进去呗~”机智如我。

“没有交互功能的pyecharts,是没有灵魂的!”

.....

于是我搜罗了一圈,结果发现,关于如何实现这个需求的内容,要么语焉不详,要么极其麻烦,要么已经过时完全不兼容。

最后,我找到了一个目前相对简便的方法,分享给大家。

这句话有强烈的潜台词:此乃抛砖引玉,旁友们,苟有方法,勿相忘!

这个方法的逻辑其实非常简单,可以说是一道小学应用题:

  • 已知,pyecharts绘制的图形可以保存为html格式,通过网页打开,也能查看html源代码

  • 又已知,有一款ppt插件,可以编辑html文本代码,最终生成对应的可视化效果

求:如何让pyecharts图在ppt中出现?

答:先用pyecharts画图生成html文件,然后查看源代码,把相关的源代码复制到那个PPT插件中,点击运行即可。

我们来用个例子实践一下整个操作。

注:小z是Win10的系统,2016版Office

Pyecharts生成html文件并获取源码

这里pyecharts绘图直接用的是官方文档的示例代码:

from pyecharts import options as opts
from pyecharts.charts import PictorialBar
from pyecharts.globals import SymbolTypelocation = ["山西", "四川", "西藏", "北京", "上海", "内蒙古", "云南", "黑龙江", "广东", "福建"]
values = [13, 42, 67, 81, 86, 94, 166, 220, 249, 262]c = (PictorialBar().add_xaxis(location).add_yaxis("",values,label_opts=opts.LabelOpts(is_show=False),symbol_size=18,symbol_repeat="fixed",symbol_offset=[0, 0],is_symbol_clip=True,symbol=SymbolType.ROUND_RECT,).reversal_axis().set_global_opts(title_opts=opts.TitleOpts(title="PictorialBar-各省份人口数量(虚假数据)"),xaxis_opts=opts.AxisOpts(is_show=False),yaxis_opts=opts.AxisOpts(axistick_opts=opts.AxisTickOpts(is_show=False),axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(opacity=0)),),).render("pictorialbar_base.html")
)

接着,打开生成的html文件:

右键或者Ctrl+U查看源码:

我们拿到了很长的可视化源码,不用纠结具体是怎么写的,只需要全部复制就好。

  在PPT中加载插件

打开PPT,“插入”模块找到“获取加载项”,老版本的是“应用商店”

然后在加载项搜索框输入“html”,添加第一个结果“Office Apps Fiddle for PowerPoint”:

网速不同,这个插件可能会加载一会,我们耐心等待片刻即可。

  绘图源代码放入插件并运行

等加载好了之后,我们点击上面“HTML”模块,复制代码,然后点击右上角长得有点像播放键的按钮:

不出意外,会报一个很丑的错误:

不要慌,把它给×掉之后,点击右上角齿轮:

接着会自动退回到刚才运行前的界面

按上图指示,我们再次点击右上角长得像播放按钮的地方。

Duang!

最开始画的带交互功能的图形,终于跃然PPT之上:

鼠标放上去,会有预期的数据反馈。

我们可以调整它的大小和在PPT中出现的位置,以保持整体的排版美观度。

“我去!这么炫酷的PPT!”隔壁不懂数据的小A偷窥我的电脑屏幕,忍不住吃了一惊。

我又照猫画虎,按照同样的流程在PPT插入了一个桑基图

“WOC!牛X!”

听到连续悦耳的夸赞,我笑出了猪叫...

虽然这是我目前找到相对最可用的一种实现方式,但是整个过程仍然历经艰难险阻,最后做一个雷区复习汇总

  • 运行第一次时总是会报错,忽略错误,再次运行即可。

  • 最终我们生成了交互图,美中不足的是旁边的柱子和齿轮没找到隐藏的办法,幸好不太显眼,不影响大局。

  • 保存PPT后,再次打开以及文件发送给其他人打开,相关交互图大概率需要重新加载(忽略报错再次运行),所以,这种插入PPT的方法,适合少而精的几张效果图,以达到既简便,又艳惊四座的效果。

  • 因为我的贫穷,都是在Windows上运行,Mac没有尝试过,把文件发送给Mac的旁友,总是显示为图片而没有交互功能,希望Mac同学也亲测一下有没有解决办法

  • 欢迎大家补充和探究更好的方法...

最后,感恩小范围测试给我反馈和帮助的旁友们:

上善若水、Chad、Aries、左世骏、flower、鲲鹏、星晴、jacky、elina sea等等~

鞠躬,撒花~

◆ ◆ ◆  ◆ ◆长按二维码关注我们数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以扫描下方管理员二维码,进群前一定要关注公众号奥,关注后让管理员帮忙拉进群,期待大家的加入。
管理员二维码:
猜你喜欢
● 笑死人不偿命的知乎沙雕问题排行榜● 用Python扒出B站那些“惊为天人”的阿婆主!● 全球股市跳水大战,谁最坑爹!● 上万条数据撕开微博热搜的真相!● 你相信逛B站也能学编程吗

如何把pyecharts的炫酷延续到PPT里!?相关推荐

  1. pyecharts将html转换图片,如何把pyecharts的炫酷延续到PPT里?

    原标题:如何把pyecharts的炫酷延续到PPT里? 导读:这几天被一个奇怪的需求困住:pyecharts作图既炫酷,又交互.但是,这个炫酷的效果往往只存在于分析师自己的编辑器中,充其量也就是生成一 ...

  2. 如何利用pyecharts绘制炫酷的关系网络图?

    如何利用pyecharts绘制炫酷的关系网络图 这是本学期在大数据哲学与社会科学实验室做的第六次分享了. 第一次分享的是: 如何利用"wordcloud+jieba"制作中文词云? ...

  3. 如何让 PPT 像 PyeCharts 一样炫酷?

    作者 | 周志鹏 责编 | 郭   芮 这几天,群里有些小伙伴被一个奇怪的需求困住: "pyecharts作图既炫酷,又交互.但是,这个炫酷的效果往往只存在于分析师自己的编辑器中,充其量也就 ...

  4. 用 Pyecharts 制作炫酷的可视化大屏

    作者 | 俊欣 来源 | 关于数据分析与可视化 前两篇Pyecharts的文章来帮我们简单的梳理了一下可以用Pyecharts来绘制哪些图表之后,本篇文章我们用pyecharts里面的一些组件,将绘制 ...

  5. 【Python】用Pyecharts制作炫酷的可视化大屏

    前两篇Pyecharts的文章来帮我们简单的梳理了一下可以用Pyecharts来绘制哪些图表之后,本篇文章我们用pyecharts里面的一些组件,将绘制的图表都组合起来 首先Grid组件 首先介绍Py ...

  6. 干货分享 | 用Pyecharts绘制20钟不同风格的炫酷交互式图表,建议收藏

    今天小编来给大家介绍一下如何在Pyecharts当中画出炫酷的图表,通过该模块当中的一系列设置,本文我们大致会介绍pyecharts当中的 Theme图表背景 Pyecharts模块内部内置了10多种 ...

  7. Python 一行代码搞定炫酷可视化,你需要了解一下 Cufflinks

    前言 学过Python数据分析的朋友都知道,在可视化的工具中,有很多优秀的三方库,比如matplotlib,seaborn,plotly,Boken,pyecharts等等.这些可视化库都有自己的特点 ...

  8. python 东哥 with open_Python一行代码搞定炫酷可视化,你需要了解一下Cufflinks

    作者:xiaoyu 微信公众号:Python数据科学 前言 学过Python数据分析的朋友都知道,在可视化的工具中,有很多优秀的三方库,比如matplotlib,seaborn,plotly,Boke ...

  9. python炫酷特效代码_推荐几个炫酷的 Python 开源项目

    推荐几个炫酷的 Python 开源项目 项目一: Supervisor 简介: Supervisor 是实际企 业常用的一款 Linux/Unix 系统下的一个进程管理工具, 基于 Python 开发 ...

最新文章

  1. MySQL使用ALTER TABLE创建索引
  2. Codeforces 987A. Infinity Gauntlet(手速题,map存一下输出即可)
  3. mybatis控制台打印sql
  4. 我的blog开张了,希望大家能多多赏光啊
  5. Java工具实现无水印批量下载
  6. 民办大学计算机专业教师,干货!民办大学和独立院校教师创新排行榜,这五个高校最亮眼...
  7. 请解释一下 str db 0dh,0ah,‘$‘ 这个汇编语句什么意思?
  8. 开课吧:C++语言基础以及应用领域有哪些?
  9. 数据爬取 mail_Python网络爬虫实战,数据解析!
  10. mysql翻译逗号隔开的字典_【多测师小课堂】python数据类型之列表、字典、元祖、字符串...
  11. xmlhttp资料(收集)
  12. 【Arcpy】Python in ArcGIS
  13. 队列:先进先出的线性表,如何实现增删查?
  14. 基于PHP+MySQL共享自行车租赁管理系统的设计与实现
  15. php goeasy,Goeasy数据推送 - 使用goeasy由后端向前端推送数据 – 基于ThinkPHP和Bootstrap的极速后台开发框架...
  16. 二、Kubernetes (k8s) 内网集群的搭建详细图解
  17. 使用k-means及k-prototype对混合型数据集进行聚类分析
  18. 【数理逻辑四】谓词逻辑及形式系统 【上】
  19. 微信小程序开发之实现一个弹幕评论
  20. 基层管理者必备的能力和素质

热门文章

  1. 两种解读,生活的意义和方法
  2. 3-2 数制转换计算器
  3. vb6.0 生成exe被简称是木马_病毒分析|银行木马样本事件分析
  4. java将中文转为拼音
  5. 基于SSM职业测评系统
  6. 宝塔免费ssl证书是什么
  7. 2009年三季度上市公司报表1
  8. c++第二次作业-定期存款利息计算器
  9. 使用zerotier one实现内网穿透及MOON架设过程整理
  10. html页面中该插件不受支持,该插件不受支持怎么解决