首页 > 编程语言 >软件测试|Python数据可视化神器——pyecharts教程(七)

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

时间:2023-09-11 14:34:59浏览次数:59  
标签:pyecharts 2022 Python 日历 datetime 设置 opts 软件测试

pyecharts绘制炫酷日历图

什么是日历图

日历图(Calendar Chart)是一种用于可视化时间序列数据的图表类型。它以日历的形式展示数据,将时间与数据值结合在一起,使得数据的周期性和趋势在日历的视觉布局中更加直观和易于理解。

在日历图中,每个单元格代表一个日期(通常是天),并用不同的颜色、大小或其他视觉属性来表示该日期对应的数据值。例如,可以使用不同的颜色来表示数据的强度,或者使用不同的大小来表示数据的数量。

日历图通常用于展示时间序列数据的周期性、趋势和模式。它适用于各种领域,如气候数据、销售数据、股票价格、社交媒体活动等。通过日历图,用户可以更容易地发现数据中的季节性变化、周期性趋势以及异常值。

除了用于展示时间序列数据外,日历图还可以用于计划和时间管理,例如将日历图用于标记某个时间段的任务和事件,以帮助用户更好地规划和安排时间。

作为数据可视化神器,pyecharts也同样支持绘制日历图,下面我们就来介绍如何使用pyecharts来绘制日历图。

绘图实战

pyecharts有一个Calendar类来绘制日历图,我们绘制日历图主要是使用这个类来进行绘制。

比如我们要绘制2022年凯美瑞车型的销售情况日历图,数据随机生成,代码如下:

import datetime
import random
from pyecharts import options as opts
from pyecharts.charts import Calendar

# 设置开始日期和结束日期
begin = datetime.date(2022, 1, 1)
end = datetime.date(2022, 12, 31)

# 生成数据,每天的日期和随机步数
data = [
    [str(begin + datetime.timedelta(days=i)), random.randint(500, 1500)]
    for i in range((end - begin).days + 1)
]

# 创建日历图对象
c = (
    Calendar()
    .add("", data, calendar_opts=opts.CalendarOpts(range_="2022"))  # 添加数据和日历选项
    .set_global_opts(
        title_opts=opts.TitleOpts(title="2022年凯美瑞销售情况"),  # 设置标题
        visualmap_opts=opts.VisualMapOpts(
            max_=1500,  # 设置最大值
            min_=500,  # 设置最小值
            orient="horizontal",  # 设置视觉映射条的方向
            is_piecewise=True,  # 是否分段显示
            pos_top="230px",  # 设置视觉映射条的上边距
            pos_left="100px",  # 设置视觉映射条的左边距
        ),
    )
)

# 输出为HTML文件
c.render("calendar_sale.html")

绘制的图像如下:

软件测试|Python数据可视化神器——pyecharts教程(七)_边距

当然,我们也可以绘制成热力图,代码如下:

import random
import datetime
import pyecharts.options as opts
from pyecharts.charts import Calendar

# 设置开始日期和结束日期
begin = datetime.date(2022, 1, 1)
end = datetime.date(2022, 12, 31)

# 生成数据,每天的日期和随机步数
data = [
    [str(begin + datetime.timedelta(days=i)), random.randint(500, 1500)]
    for i in range((end - begin).days + 1)
]

# 创建日历图对象
c = (
    Calendar()
    .add(
        series_name="",  # 设置图例名称
        yaxis_data=data,  # 设置y轴数据
        calendar_opts=opts.CalendarOpts(
            pos_top="120",  # 设置日历图的上边距
            pos_left="30",  # 设置日历图的左边距
            pos_right="30",  # 设置日历图的右边距
            range_="2022",  # 设置日历的范围
            yearlabel_opts=opts.CalendarYearLabelOpts(is_show=False),  # 设置年份标签选项,不显示年份
        ),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(pos_top="30", pos_left="center", title="2022年凯美瑞销售情况"),  # 设置标题
        visualmap_opts=opts.VisualMapOpts(
            max_=1500, min_=500, orient="horizontal", is_piecewise=False  # 设置视觉映射选项
        ),
    )
)

# 输出为HTML文件
c.render("calendar_heat.html")

运行代码,生成的日历热力图如下图所示:

软件测试|Python数据可视化神器——pyecharts教程(七)_时间序列_02

我们可以通过移动左下角的标尺来看的不同热力的图像展示,如下图:

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

总结

这只是一个简单的例子,你可以根据需要自定义图表样式和数据,以满足你的具体需求。在Pyecharts的官方文档中,你可以找到更多关于日历图和其他图表的详细用法和选项。

标签:pyecharts,2022,Python,日历,datetime,设置,opts,软件测试
From: https://blog.51cto.com/u_15640304/7435816

相关文章

  • 软件测试|好用的pycharm插件推荐(二)—— JSON Parser
    简介PyCharm是一款强大的Python集成开发环境(IDE),它提供了许多插件来增强开发体验。其中一个非常有用的插件是"JSONParser",它允许你在PyCharm中轻松解析和处理JSON数据。在本文中,我们将详细介绍如何安装和使用PyCharmJSONParser插件。安装JSONParser插件打开PyCharmIDE,并点击顶......
  • 软件测试|好用的pycharm插件推荐(三)——Rainbow Brackets
    简介我们平时写代码的时候,括号是让我们非常头疼的地方,特别是代码逻辑很多,层层嵌套的情况。一眼很难看出,代码是从哪个括号开始,到哪个反括号结束的。这个时候要是有一款工具能够让我们一眼就看出代码从哪个括号开始,到哪个反括号结束,无疑对我们会有很大帮助。PyCharmRainbowBracket......
  • 使用Python开发一个ICP备案查询接口
    使用Python开发一个ICP备案查询接口实现目标支持通过域名、APP名称、快应用名称、小程序名称来查询对应的备案信息支持通过公司主体名称来查询所有备案信息,并支持分页查询支持通过备案号来查询备案信息构建一个高性能的模块基于模块构建一个高性能的本地化Api,并提供更人性......
  • appium+python三种等待方式
    三大等待:1、显示等待所有条件都是明确指出来,等待条件存在之后,再进行后续的代码执行等待:webdriverwait条件:expected_condition等待20秒检测条件成立的间隔:默认是0.5秒使用方法:WebDriverWait(driver,20).until(EC.visibility_of_element_located((By.XPATH,'//a[text()="-W......
  • python中numpy.random.seed设置随机种子是否影响子进程
    给出代码:frommultiprocessingimportProcessimportnumpyasnpclassNN(Process):def__init__(self,id):super(NN,self).__init__()self.id=iddefrun(self):super(NN,self).run()print(np.random.random(5))......
  • Python-day6
    1、条件表达式num1=int(input('num1='))num2=int(input('num2='))print(str(num1)+'>='+str(num2)ifnum1>=num2elsestr(num1)+'<='+str(num2))2、pass语句s=input('您是会员吗:Y/N')ifs=='Y':passelse:......
  • Python - python环境搭建
    Pycharm下载安装详细教程目录1、Pycharm简介2、Pycharm下载3、环境变量的配置4、Pycharm的使用1、Pycharm简介PyCharm是一种PythonIDE(IntegratedDevelopmentEnvironment,集成开发环境),带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、项目管......
  • 深入了解Python协程与异步编程
    Python是一门强大的编程语言,提供了多种方式来处理并发和异步编程。在本博客中,我们将深入探讨Python中的协程(coroutines)和异步编程的重要性。什么是协程?协程是一种轻量级的线程,允许在一个线程中执行多个任务,而无需线程切换的开销。在Python中,协程通过asyncio库来实现。importasy......
  • Python - PyQt5环境搭建
    前期准备:PyQt5以及其他组件的下载与安装    在python的图形界面开发过程中,我们需要三个组件,分别是:PyQt5、pyqt5-tools、PyQt5Designer,我们直接在命令行输入下面的代码进行安装即可:pipinstallPyQt5pipinstallpyqt5-toolspipinstallPyQt5Designer环境的设置:......
  • python import
    python的import语句1、import作用import跟C/C++中的#include作用有点类似,都是为了调用定义在其他文件中的变量、函数或者类,但实现的区别很大。C/C++中如果a.cppinclude了b.h那么b.h这个文件就原样加到a.cpp文件中去了,这样在b.h中的变量、函数、类就在a.cpp文件中声明了,所以......