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

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

时间:2023-11-15 17:23:34浏览次数:47  
标签:10 pyecharts Python random 力图 heatmap import opts 软件测试

Pyecharts绘制热力图

当涉及可视化数据时,热力图是一种强大的工具,它可以帮助我们直观地了解数据集中的模式和趋势。在本文中,我们将学习如何使用 Python 中的 Pyecharts 库创建热力图,以便将数据转化为可视化的形式。

什么是热力图?

热力图是一种用于显示数据密度的二维图表,其中颜色的变化表示在坐标上的数据值。热力图通常用于可视化数据集中的分布,以便查看数据的高密度和低密度区域,从而识别出数据的模式和关联性。

数据准备

为了演示,我们将使用一个虚拟的数据集,其中包含了一些随机生成的数据点。在实际绘制中,我们可以根据自己的需求替换为真实的数据。代码如下:

import random

data = []
for _ in range(100):
    data.append([random.randint(0, 10), random.randint(0, 10), random.randint(1, 100)])

这个数据集由一系列三元组组成,分别表示 x 坐标、y 坐标和数据值。

绘制基本热力图

现在我们将使用 Pyecharts 来创建热力图。以下是创建热力图的步骤:

  1. 所需的库和模块:
from pyecharts import options as opts
from pyecharts.charts import HeatMap
  1. 创建 HeatMap 实例,并设置数据和基本配置:
heatmap = HeatMap()
heatmap.add_xaxis(list(range(11)))  # X 轴范围为 0 到 10
heatmap.add_yaxis("", list(range(11)), data)
heatmap.set_global_opts(
    title_opts=opts.TitleOpts(title="热力图示例"),
    visualmap_opts=opts.VisualMapOpts(is_show=False),  # 可以自定义调整颜色映射等参数
)
heatmap.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
  1. 生成 HTML 文件或在 Jupyter Notebook 中显示热力图:
heatmap.render("heatmap.html")  # 将热力图保存为 HTML 文件
heatmap.render_notebook()  # 在 Jupyter Notebook 中显示热力图

热力图如下:

在这个示例中,我们设置了 X 轴和 Y 轴的坐标范围为 0 到 10,然后通过 add_xaxisadd_yaxis 方法将数据添加到热力图中。通过 set_global_opts 方法,我们可以设置标题和颜色映射,通过set_series_opts设置是否展示热力图的数值。

添加色块数值

当我们将opts.LabelOptsis_show参数设置为True时,每个色块上将显示对应的数值,如下:

import random
from pyecharts import options as opts
from pyecharts.charts import HeatMap


data = []
for _ in range(100):
    data.append([random.randint(0, 10), random.randint(0, 10), random.randint(1, 100)])


heatmap = HeatMap()
heatmap.add_xaxis(list(range(11)))  # X 轴范围为 0 到 10
heatmap.add_yaxis("", list(range(11)), data)
heatmap.set_global_opts(
    title_opts=opts.TitleOpts(title="热力图示例"),
    visualmap_opts=opts.VisualMapOpts(is_show=False),  # 可以自定义调整颜色映射等参数
)
heatmap.set_series_opts(label_opts=opts.LabelOpts(is_show=True))


heatmap.render("heatmap.html")  # 将热力图保存为 HTML 文件

添加热力标尺

opts.VisualMapOpts()is_show设置为True时,会在热力图中添加热力标尺,我们在拖动热力标尺时,会突出相应的色块。

import random
from pyecharts import options as opts
from pyecharts.charts import HeatMap


data = []
for _ in range(100):
    data.append([random.randint(0, 10), random.randint(0, 10), random.randint(1, 100)])


heatmap = HeatMap()
heatmap.add_xaxis(list(range(11)))  # X 轴范围为 0 到 10
heatmap.add_yaxis("", list(range(11)), data)
heatmap.set_global_opts(
    title_opts=opts.TitleOpts(title="热力图示例"),
    visualmap_opts=opts.VisualMapOpts(is_show=True),  # 可以自定义调整颜色映射等参数
)
heatmap.set_series_opts(label_opts=opts.LabelOpts(is_show=True))


heatmap.render("heatmap.html")  # 将热力图保存为 HTML 文件

总结

通过使用 Pyecharts 库,我们可以轻松地创建漂亮的热力图,以便更好地理解和展示数据集中的模式和趋势。本文介绍了创建热力图的基本步骤,我们可以根据需要进一步定制热力图的样式和设置,以便最好地展示数据。

获取更多技术资料,请点击!

标签:10,pyecharts,Python,random,力图,heatmap,import,opts,软件测试
From: https://www.cnblogs.com/hogwarts/p/17834311.html

相关文章

  • 软件测试|Python urllib3库使用指南
    简介当涉及到进行网络请求和处理HTTP相关任务时,Python的urllib3库是一个强大且灵活的选择。它提供了一种简单的方式来执行HTTP请求、处理响应和处理连接池,使得与Web服务进行交互变得更加容易。本文将详细介绍如何使用urllib3库进行网络请求。安装urllib3首先我们需要安装urlli......
  • 不懂乐理,也能扒谱,基于openvpi将mp3转换为midi乐谱(Python3.10)
    所谓"扒谱"是指通过听歌或观看演奏视频等方式,逐步分析和还原音乐作品的曲谱或乐谱的过程。它是音乐学习和演奏的一种常见方法,通常由音乐爱好者、乐手或学生使用。在扒谱的过程中,人们会仔细聆听音乐作品,辨别和记录出各个音符、和弦、节奏等元素,并通过试错和反复推敲来逐渐还原出准......
  • python 发邮件,简单版本
    importsmtplibfromemail.mime.textimportMIMETextfromemail.mime.multipartimportMIMEMultipartclassTemplate(object):html="""<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8......
  • Python3 协程 await async 相关的用法和笔记
    想要提供可以进行协程切换的awaitable,可以使用下面的方法:1任务taskasyncdeffunc():print("yesWait")task=asyncio.create_task(func())awaittask2协程对象,可以使asyncdef定义的协程函数(是否能触发切换不一定,要看函数内容)函数内可以利用asyncio.sl......
  • 软件测试|使用python绘制等高线密度图
    简介等高线密度图(ContourDensityPlot)是一种可视化数据分布的有效方式,特别适用于显示二维数据的密度分布情况。Python提供了丰富的工具和库,使得创建等高线密度图变得相对容易。在本文中,我们将介绍如何使用Python和Matplotlib库创建等高线密度图,并提供一个示例来演示整个过程。步骤......
  • 软件测试|使用Python提取出语句中的人名
    简介在自然语言处理(NLP)中,提取文本中的人名是一项常见的任务。Python作为一种流行的编程语言,拥有强大的NLP库和工具,使我们能够轻松地进行这项任务。在本文中,我们将使用Python示例来演示如何提取文本中的人名。环境准备我们将使用以下Python库来执行人名提取任务:spaCy:一个流行的NLP库......
  • 在python开发过程中常见的异常错误
    下面这些也是常见的异常错误,在报错的时候不要害怕,记住这些常见的单词。AttributeError尝试访问未知的对象属性EOFError用户输入文件末尾标志EOF(Ctrl+d)FloatingPointError浮点计算错误GeneratorExitgenerator.close()方法被调用的时候ImportError导入模块失败的时候KeyboardInte......
  • 为什么要学习python技术??
    大家好,随着大数据时代的到来,相信大家对新时代的认知达到了一个新的高度,我们可以仔细观察我们的生活,似乎每一年都会发生较大的变化。我记得我刚上大学的时候,移动支付才刚开始普及,短短几年,出门只需要一部手机便能行走天下,其中计算机编程起到了重要作用。 我们为什么要学习编......
  • Python3
    importnumpyasnpx=np.array([1.0,2.0,3.0,4.0])y=x+2Ans:array([3.,4.,5.,6.])y=x>2.0Ans:array([False,False,True,True]) A.SyntaxError-alsoknownasparsingerror.Pythondoesnotlikeyourstructure.ItislikeDrFasks......
  • mojo编程语言:编译后的mojo二进制执行文件调用python库报错——设置MOJO_PYTHON_LIBRAR
    代码:frompythonimportPythonfnf()raises:#ThisisequivalenttoPython's`importnumpyasnp`letnp=Python.import_module("numpy")leta=np.array([1,2,3])print(a)fnmain()raises:f() mojo编译后执行,报错:Mojo/Pyth......