【干货】数据可视化很难?一文弄懂PyEcharts可视化技术

liftword1个月前 (05-18)技术文章5

俗话说的好“文不如表,表不如图”,的信息传达效率很高,是数据汇报、数据展示的重要手段。好的数据展示不仅需要有图,还要选合适的图、选合适的工具画图(例如能交互的图就比静态图更吸引人)。

图形的选择可以参考CDA数据分析师认证一级教材中关于图表与分析场景的对应关系来选择合适的图

本文主要给大家分享一款绘图工具,可以绘制能交互的图形,这个工具就是PyEcharts

PyEcharts为啥画的一手好图

PyEcharts为啥画的一手好图?因为他有个“好爸爸”-Echarts。Echarts是百度开源的,目前托管在Apache软件基金会。它底层由JavaScripts实现,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器。ECharts 提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。

Echarts虽有千般好,but JavaScripts这个前端语言对于大部分数据分析师而言是一个屏障,所以有几位大佬开发出PyEcharts,这其实是通过Python语言对Echarts做了封装,会Python的数据分析师便能快速上手使用Echarts了。

快速上手PyEcharts

PyEcharts版本迭代比较快,差异较大的是0.5.x 与新的 1.x 、2.x版本之间差异较大。并且官方也不再持续对0.5.x系列更新迭代了,所以本文采用的是1.x、2.x的写法演示如何应用PyEcharts进行绘图。

从简单的柱形图开始

导入要绘制的图形对象的构造函数,常见的图表几乎都在charts里面了。

from pyecharts.charts import Bar # 这里导入的是柱形图Bar,还可以是Line折线图、Pie饼图等

使用构造函数初始化图形对象

bar = Bar()

接下来添加x轴的数据

bar.add_xaxis(["2021","2022","2023","2024","2025"])

添加y轴数据,第一个参数是系列名称(例如一张图可以绘制多组柱状图,一个系列就是一个组)

bar.add_yaxis("A组销售额",y_axis=[1000,3000,2500,4000,3900])
bar.add_yaxis("B组销售额",y_axis=[2000,3500,3500,3000,3500])

最后通过render或者render_notebook函数将图形绘制出来。

bar.render_notebook() # 适合在jupyter notebook环境下直接在cell下面显示。


如果使用的是render可以将图形渲染到html(网页文件)中去,可以传入指定的文件名。

bar.render("历年销售数据.html")

上面的代码生成了历史销售数据.html这个网页文件了。

双击打开就可以在浏览器看到图形了。

锦上添花

简单的绘图上面的操作就够了,如果想让图形更炫酷,则需要更多的代码雕琢。如何在PyEcharts里面实现其他额外的功能呢,通过配置项即可。PyEcharts里有一句话叫“一切皆配置”,就是任何需求都由配置来实现。

所有的配置类型都在options模块下,约定俗成的导入方式如下:

import pyecharts.options as opts 

接下来初始化柱状图对象时为其做初始化配置(init_opts),在初始化配置中设置一套PyEcharts自带的主题。

from pyecharts.globals import ThemeType
bar2 = Bar(init_opts=opts.InitOpts(theme=ThemeType.SHINE))

后续代码一样,添加数据,渲染致jupyter notebook。

bar2.add_xaxis(["2021","2022","2023","2024","2025"])
bar2.add_yaxis("A组销售额",y_axis=[1000,3000,2500,4000,3900])
bar2.add_yaxis("B组销售额",y_axis=[2000,3500,3500,3000,3500])
bar2.render_notebook()


看起来与之前的图还是有很大区别的,例如配色。PyEcharts还有很多主题可以有不同的视觉效果。

bar3 = Bar(init_opts=opts.InitOpts(theme=ThemeType.DARK))

以上就是PyEcharts的基本用法,如果你学会了绘制常见的一些图形完全没有问题。更多的细节用法可以关注PyEcharts官方文档或者我们的系列文章。

CDA数据分析力测评专业可靠,如果想了解自己的数据分析能力,扫码开测,做到心理有数。

相关文章

Python数据分析(四)

现在上手一个数据分析实际案例: 从数据结果集本身入手,使用通用性检查分析数据+业务规则校验是否有异常,最终形成分析报告,若有问题及时做出人工干预 背景:数据最终到应用层面,会经过很多前面很多节点处理...

今天我学习了Python数据统计分析教程,把笔记分享出来

一、环境搭建1. 安装 Python :从官网下载适合你操作系统的版本并安装,建议勾选 “Add Python to PATH” 选项。2. 安装相关库 :常用的有 NumPy(数值计算)、Panda...

Python数据分析(三)

续接Python分析,本篇主要是关于python中一些高阶函数的应用以下是针对你提到的几个高级知识点(数据合并、apply、iterrows、agg、map)的详细解释和案例,帮助你系统学习和理解这些...

Python 数据分析必学的 10 个核心库:从基础操作到高阶建模全攻略

在Python数据分析领域,掌握核心工具库能让你效率倍增。本文精选10个高实用性库,结合代码示例详解从数据处理到机器学习的全流程操作,助你快速进阶数据分析高手。一、Pandas:结构化数据处理的全能选...

工业数据分析工具的力量:用Python释放数据的潜能

阅读文章前辛苦您点下“关注”,方便讨论和分享,为了回馈您的支持,我将每日更新优质内容。如需转载请附上本文源链接!工业数据是现代制造业和工程领域的重要资源。从设备的实时运行指标到生产线的整体效率数据,工...

Python数据分析实战:以数据分析岗为例,探索行业与薪资关联性

金三银四,数据分析师成为众多行业竞相追逐的热门岗位,想知道如何在这个领域精准发力、脱颖而出吗?今天,我将以 BOSS 直聘上的数据为样本,借助 Python 强大的数据分析能力,深度剖析各个行业与薪资...