我在贴吧里看见了对位数据雷达图,十分好奇其中的原理,于是我学习使用python制作雷达图。首先从“王者荣耀赛事数据平台”下载了四个文件:“选手数据-KDA-20230513-20230513.xls”、“选手数据-KDA-20230427-20230513.xls”、“选手数据-FARM与团队-20230427-20230513.xls”和“选手数据-FARM与团队-20230309-20230513.xls”。
为了方便处理,我先在excel里面把这些文件转换成了.csv文件。通过python编程,导入数据,并处理,最后制作雷达图。在数据分析过程中,我选取了Fly和梓墨在20230513的数据以及从20230427到20230513之间的对抗路的数据,我发现20230427到20230513之间的各个对抗路选手的大部分指标已经被取过均值了,我无法得到他们在每一场对局的数据,所以在计算所有对抗路选手的数据中,我把他们的各自的比赛场次也考虑在内,样本分布不能只是每个选手的均值,需要扩张。
在数据归一化过程中我尝试了两种方式:线性归一化和零-均值归一化。线性归一化为:(单个数据-最小值)/(最大值-最小值),零-均值归一化为:(单个数据-均值)/标准差。不同归一化标准下数据在雷达图上呈现的效果是有差异的。
以下为生成的雷达图:(各个指标下标注的数据均为归一化后的数据)


以下为代码截图:

若将全部的对抗路数据选取改为20230309-20230513之间的,则有雷达图如下:


本人非专业人士,水平有限,代码只是在网上边学边写的,如有不足之处,请谅解,同时欢迎大家提出意见。
为了方便处理,我先在excel里面把这些文件转换成了.csv文件。通过python编程,导入数据,并处理,最后制作雷达图。在数据分析过程中,我选取了Fly和梓墨在20230513的数据以及从20230427到20230513之间的对抗路的数据,我发现20230427到20230513之间的各个对抗路选手的大部分指标已经被取过均值了,我无法得到他们在每一场对局的数据,所以在计算所有对抗路选手的数据中,我把他们的各自的比赛场次也考虑在内,样本分布不能只是每个选手的均值,需要扩张。
在数据归一化过程中我尝试了两种方式:线性归一化和零-均值归一化。线性归一化为:(单个数据-最小值)/(最大值-最小值),零-均值归一化为:(单个数据-均值)/标准差。不同归一化标准下数据在雷达图上呈现的效果是有差异的。
以下为生成的雷达图:(各个指标下标注的数据均为归一化后的数据)


以下为代码截图:

若将全部的对抗路数据选取改为20230309-20230513之间的,则有雷达图如下:


本人非专业人士,水平有限,代码只是在网上边学边写的,如有不足之处,请谅解,同时欢迎大家提出意见。