软件测试|Python数据可视化神器——pyecharts教程(一)

举报
霍格沃兹测试开发 发表于 2023/02/19 11:12:29 2023/02/19
【摘要】 前言我们都知道百度开源了一个Echarts数据可视化库,支持绘制各种主流的图表。Python在数据分析方面是十分强大的,于是,pyecharts就应运而生了。 pyecharts简介及安装pyecharts继承了Echarts的优点,有如下特点:囊括了 30+ 种常见图表,应有尽有高度灵活的配置项,可轻松搭配出精美的图表多达 400+ 地图,为地理数据可视化提供强有力的支持简洁的 API ...

前言

我们都知道百度开源了一个Echarts数据可视化库,支持绘制各种主流的图表。Python在数据分析方面是十分强大的,于是,pyecharts就应运而生了。

pyecharts简介及安装

pyecharts继承了Echarts的优点,有如下特点:

  • 囊括了 30+ 种常见图表,应有尽有
  • 高度灵活的配置项,可轻松搭配出精美的图表
  • 多达 400+ 地图,为地理数据可视化提供强有力的支持
  • 简洁的 API 设计,使用如丝滑般流畅,支持链式调用

详细内容可见:pyecharts官方文档

和以往的神级第三方库一样,安装的步骤还是一条pip命令。

pip install pyecharts

检查是否安装成功及版本如下所示:

import pyecharts

print(pyecharts.__version__)

----------------------------------------
2.0.1

如上所示,即表示安装成功。

使用方法

先来看一个简单的例子,代码如下

bar = Bar()
bar.add_xaxis(["朗逸", "帕萨特", "途观", "途昂", "凌渡", "途安"])
bar.add_yaxis("销量", [28000, 9000, 7500, 6000, 4800, 3600])
bar.set_global_opts(title_opts=opts.TitleOpts(title="上汽大众", subtitle="上汽大众一月份车型销量"))
bar.render()

图如下所示:

在这里插入图片描述

代码也可以写成链式调用的方式,产生的结果是一样的,如下所示:

bar = (
    Bar()
        .add_xaxis(["朗逸", "帕萨特", "途观", "途昂", "凌渡", "途安"])
        .add_yaxis("销量", [28000, 9000, 7500, 6000, 4800, 3600])
        .set_global_opts(title_opts=opts.TitleOpts(title="上汽大众", subtitle="上汽大众一月份车型销量"))
)
bar.render()

单独调用方式和链式调用方式都可以实现我们的操作,pyecharts所有方法均支持链式调用。

柱状图堆叠

还是和上面的例子一样,当我们需要统计上汽大众各车型前两个月的销量总和并绘图,我们需要怎么操作?pyecharts提供了绘制堆叠柱状图的功能,代码如下:

from pyecharts.charts import Bar
from pyecharts import options as opts

x_attr = ['朗逸', '帕萨特', '途观', '途昂', '凌渡', '途安']
data1 = [28000, 9000, 7500, 6000, 4800, 3600]
data2 = [32000, 12000, 10800, 7500, 6000, 3000]

bar = Bar()
bar.add_xaxis(x_attr)
# 不同系列的数据使用相同的stack值会堆叠在一起
bar.add_yaxis('一月份',  data1,stack=1)
bar.add_yaxis('二月份', data2,stack=1)
bar.set_global_opts(title_opts=opts.TitleOpts(title="上汽大众", subtitle="上汽大众1-2月份车型销量"))
bar.render()

结果如下图所示:

在这里插入图片描述

坐标轴翻转

pyecharts同样支持坐标轴翻转,只需要加上reversal_axis()参数即可,代码如下:

from pyecharts.charts import Bar
from pyecharts import options as opts

x_attr = ['朗逸', '帕萨特', '途观', '途昂', '凌渡', '途安']
data1 = [28000, 9000, 7500, 6000, 4800, 3600]
data2 = [32000, 12000, 10800, 7500, 6000, 3000]

bar = Bar()
bar.add_xaxis(x_attr)
# 不同系列的数据使用相同的stack值会堆叠在一起
bar.add_yaxis('一月份',  data1,stack=1)
bar.add_yaxis('二月份', data2,stack=1)
bar.set_global_opts(title_opts=opts.TitleOpts(title="上汽大众", subtitle="上汽大众1-2月份车型销量"))
bar.reversal_axis()
bar.render()

在这里插入图片描述

总结

本文主要内容是pyecharts的介绍和安装,以及绘制最基本的柱状图,后面我们会继续介绍绘制热力图以及其他图形,敬请期待!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。