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

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

前言

我们都知道百度开源了一个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的介绍和安装,以及绘制最基本的柱状图,后面我们会继续介绍绘制热力图以及其他图形,敬请期待!

相关文章
|
3天前
|
机器学习/深度学习 自然语言处理 PyTorch
使用Python实现循环神经网络(RNN)的博客教程
使用Python实现循环神经网络(RNN)的博客教程
23 1
|
20小时前
|
安全 测试技术 持续交付
在Python Web开发中,测试是一个至关重要的环节
【5月更文挑战第12天】在Python Web开发中,测试至关重要,包括单元测试(unittest模块)、集成测试、功能测试、系统测试、验收测试、性能测试、安全测试和端到端测试。常用的测试工具有unittest、pytest、selenium、requests和coverage。遵循“测试先行”和“持续集成”原则,确保代码质量与稳定性。
8 3
|
20小时前
|
Web App开发 测试技术 C++
Playwright安装与Python集成:探索跨浏览器测试的奇妙世界
Playwright是新兴的跨浏览器测试工具,相比Selenium,它支持Chrome、Firefox、WebKit,执行速度快,选择器更稳定。安装Playwright只需一条`pip install playwright`的命令,随后的`playwright install`会自动添加浏览器,无需处理浏览器驱动问题。这一优势免去了Selenium中匹配驱动的烦恼。文章适合寻求高效自动化测试解决方案的开发者。
10 2
|
1天前
|
数据可视化 Python
Python制作数据可视化大屏(二)
Python制作数据可视化大屏
|
1天前
|
人工智能 数据可视化 算法
Python制作数据可视化大屏(一)
Python制作数据可视化大屏
|
2天前
|
前端开发 Java 测试技术
《手把手教你》系列技巧篇(四十二)-java+ selenium自动化测试 - 处理iframe -下篇(详解教程)
【5月更文挑战第6天】本文介绍了如何使用Selenium处理含有iframe的网页。作者首先解释了iframe是什么,即HTML中的一个框架,用于在一个页面中嵌入另一个页面。接着,通过一个实战例子展示了在QQ邮箱登录页面中,由于输入框存在于iframe内,导致直接定位元素失败。作者提供了三种方法来处理这种情况:1)通过id或name属性切换到iframe;2)使用webElement对象切换;3)通过索引切换。最后,给出了相应的Java代码示例,并提醒读者根据iframe的实际情况选择合适的方法进行切换和元素定位。
7 0
|
2天前
|
Java 测试技术 API
Spring Boot 单元测试 0基础教程
Spring Boot 单元测试 0基础教程
8 0
|
3天前
|
前端开发 测试技术 Python
《手把手教你》系列技巧篇(四十一)-java+ selenium自动化测试 - 处理iframe -上篇(详解教程)
【5月更文挑战第5天】本文介绍了HTML中的`iframe`标签,它用于在网页中嵌套其他网页。`iframe`常用于加载外部内容或网站的某个部分,以实现页面美观。文章还讲述了使用Selenium自动化测试时如何处理`iframe`,通过`switchTo().frame()`方法进入`iframe`,完成相应操作,然后使用`switchTo().defaultContent()`返回主窗口。此外,文章提供了一个包含`iframe`的HTML代码示例,并给出了一个简单的自动化测试代码实战,演示了如何在`iframe`中输入文本。
14 3
|
3天前
|
机器学习/深度学习 数据可视化 TensorFlow
Python深度学习基于Tensorflow(4)Tensorflow 数据处理和数据可视化
Python深度学习基于Tensorflow(4)Tensorflow 数据处理和数据可视化
10 3
|
3天前
|
数据可视化 JavaScript 前端开发
Python数据可视化 坐标系
Python数据可视化 坐标系
10 2