2

电池图表 - 可视化使用率等

 2 years ago
source link: https://blog.csdn.net/pythonandaiot/article/details/122332269
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

电池图表 - 可视化使用率等

我的图片描述

一段时间以来,我一直在创建常见的可视化效果,例如散点图、条形图、蜂群等,并考虑做一些不同的事情。因为我是一个狂热的足球迷,所以我想到了代表球员在一段时间内(一个赛季,几个赛季)的使用或参与的想法。我见过一些很酷的可视化,比如描述使用情况的甜甜圈,我想做出一些不同的、简单易懂的东西。我考虑将电池表示为播放器使用的一种形式,这很有意义。

对于几乎没有使用过(玩的时间较少)的玩家,显示出大量的电池存在,因为他们有足够的能量留在油箱中。对于经常使用的玩家,则相反,即显示电量耗尽或电量不足

那么,电池图表的目的是什么?您可以使用它来显示使用情况、消耗、参与、疲劳等(任何与使用相关的内容)。

下图是电池在我们的图中的外观示例视图,尽管单个电池并不是我们将在本教程中重新创建的内容。

示例可视化

在开始学习本教程之前,我想说明的是,可以根据子图的数量或任何其他大小参数调整该函数以适应相应的情况。谈到我们将要绘制的图,有一系列需要考虑的步骤,我们将逐一执行。以下是这些步骤:-

  1. 概述我们将要绘制的内容
  2. 导入必要的库
  3. 写一个函数来绘制电池
    • 这是将被调用以绘制电池图表的函数
  4. 读取数据并相应地绘制图表
    • 我们将通过一个例子来演示它

情节提纲

我们的用例是什么?

  • 我们得到了一个数据集,其中包含利物浦球员的数据以及他们在过去 2 个赛季中的上场时间(无论他们在那段时间效力于哪个俱乐部)。我们将使用这些数据进行可视化。
  • 最终的可视化是这篇博文的特色图片。我们将逐步介绍如何创建可视化。

导入库

首先也是最重要的部分是导入基本库,以便我们可以利用其中的功能。在这种情况下,我们将导入我们需要的库。

matplotlib.path和导入的函数matplotlib.patches将用于绘制线条、矩形、框等以按原样显示电池。

绘制电池 - 一个功能

下一部分是定义一个名为 的函数draw_battery(),该函数将用于绘制电池。稍后,我们将通过指定某些参数来调用此函数以根据需要构建图形。以下是构建电池的代码 -

读取数据

一旦我们创建了 API 或函数,我们现在可以实现相同的。为此,我们需要输入所需的数据。在我们的示例中,我们有一个数据集,其中包含利物浦球员的列表以及他们在过去两个赛季中的上场时间。数据是从Football Reference aka FBRef收集的。

我们使用 pandas 库中的 read excel 函数来读取存储为 excel 文件的数据集。

data = pd.read_excel("Liverpool Minutes Played.xlsx")

现在,让我们通过列出数据集的前五行来看看数据的外观 -

data.head()

我们数据集的前 5 行

绘制我们的数据

现在一切准备就绪,我们继续绘制数据。我们的数据集中有 25 名玩家,因此可以选择 5 x 5 的数字。我们还将添加一些标题并相应地设置颜色。

我们现在已经填写了适当的标题、图形大小等。下一步是绘制所有轴,即每个玩家的电池。p是用于遍历数据帧并获取每个玩家数据的变量。该draw_battery()函数调用将明显绘制电池。在这种情况下,我们还添加了所需的标签 - 玩家姓名和使用率/百分比。

现在一切都差不多完成了,我们做一些最后的修饰,无论如何这是一个完全可选的部分。由于可视化专注于利物浦球员,我添加了利物浦的标志并添加了我的水印。此外,归功于数据源/提供者更多的是一种道德习惯,因此我们在显示情节之前继续这样做。

所以,我们有下面的情节。您可以在draw_battery()功能中根据需要自定义设计- 更改大小、颜色、形状等

Usage_Chart_Liverpool

文章知识点与官方知识档案匹配,可进一步学习相关知识

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK