介绍
一段时间以来,我一直在创建常见的可视化效果,例如散点图、条形图、蜂群等,并考虑做一些不同的事情。因为我是一个狂热的足球迷,所以我想到了代表球员在一段时间内(一个赛季,几个赛季)的使用或参与的想法。我见过一些很酷的可视化,比如描述使用情况的甜甜圈,我想做出一些不同的、简单易懂的东西。我考虑将电池表示为播放器使用的一种形式,这很有意义。
对于几乎没有使用过(玩的时间较少)的玩家,显示出大量的电池存在,因为他们有足够的能量留在油箱中。对于经常使用的玩家,则相反,即显示电量耗尽或电量不足
那么,电池图表的目的是什么?您可以使用它来显示使用情况、消耗、参与、疲劳等(任何与使用相关的内容)。
下图是电池在我们的图中的外观示例视图,尽管单个电池并不是我们将在本教程中重新创建的内容。
教程
在开始学习本教程之前,我想说明的是,可以根据子图的数量或任何其他大小参数调整该函数以适应相应的情况。谈到我们将要绘制的图,有一系列需要考虑的步骤,我们将逐一执行。以下是这些步骤:-
- 概述我们将要绘制的内容
- 导入必要的库
- 写一个函数来绘制电池
- 这是将被调用以绘制电池图表的函数
- 读取数据并相应地绘制图表
- 我们将通过一个例子来演示它
情节提纲
我们的用例是什么?
- 我们得到了一个数据集,其中包含利物浦球员的数据以及他们在过去 2 个赛季中的上场时间(无论他们在那段时间效力于哪个俱乐部)。我们将使用这些数据进行可视化。
- 最终的可视化是这篇博文的特色图片。我们将逐步介绍如何创建可视化。
导入库
首先也是最重要的部分是导入基本库,以便我们可以利用其中的功能。在这种情况下,我们将导入我们需要的库。
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.path import Path
from matplotlib.patches import FancyBboxPatch, PathPatch, Wedge
从matplotlib.path
和导入的函数matplotlib.patches
将用于绘制线条、矩形、框等以按原样显示电池。
绘制电池 - 一个功能
下一部分是定义一个名为 的函数draw_battery()
,该函数将用于绘制电池。稍后,我们将通过指定某些参数来调用此函数以根据需要构建图形。以下是构建电池的代码 -
def draw_battery(fig, ax, percentage=0, bat_ec="grey", tip_fc="none", tip_ec="grey", bol_fc="#fdfdfd", bol_ec="grey", invert_perc=False):
'''
Parameters
----------
fig : figure
The figure object for the pl