pyecharts:雷达图

看到在Tableau上画雷达图挺麻烦的,需要导入背景图片;matplotlib也没有直接画雷达图的函数,需要借助数学知识一步步实现。其他软件就不清楚了,但是pyecharts里有对应的函数Radar,生成的图片简介美观而且互动性强。
参考博客:
RGB颜色对应表:https://tool.oschina.net/commons?type=3
雷达图:雷达图

import pandas as pd
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']


excelFile = r'C:/Users/admin/Desktop/论文/球员数据.xls'
df=pd.DataFrame(pd.read_excel(excelFile))
df.head()
姓名传球射门身体防守速度盘带
0C·罗纳尔多839287498986
1梅西889566438696
2苏亚雷斯809287587881
3莱万多夫斯基799284538187
4格列兹曼848770548689
from pyecharts import options as opts #用以设置
from pyecharts.charts import Radar #导入雷达类

下面的数据如果用list(df.iloc[0])[1:]表示v1的话,则一直显示不出来,挺坑的。所以还是贴具体数字。

from matplotlib import pyplot as plt
v1=[[83, 92, 87, 49, 89, 86]]  # 数据必须为二维数组,否则会集中一个指示器显示
v2=[[88, 95, 66, 43, 86, 96]]
v3=[[80, 92, 87, 58, 78, 81]]
radar1=(
    Radar()
    .add_schema(# 添加schema架构
        schema=[
            opts.RadarIndicatorItem(name='传球',max_=100),# 设置指示器名称和最大值
            opts.RadarIndicatorItem(name='射门',max_=100),
            opts.RadarIndicatorItem(name='身体',max_=100),
            opts.RadarIndicatorItem(name='防守',max_=100),
            opts.RadarIndicatorItem(name='速度',max_=100),
            opts.RadarIndicatorItem(name='盘带',max_=100),
        ]
    )
    .add(df["姓名"][0],v1,color="#f9713c") # 添加一条数据,参数1为数据名,参数2为数据,参数3为颜色
    .add(df["姓名"][1],v2,color="#4169E1") 
    .add(df["姓名"][2],v3,color="#00BFFF") 
    .set_global_opts(title_opts=opts.TitleOpts(title='雷达图'),)
)
radar1.render('1.html')

在这里插入图片描述
在html里面可以单独看某一个球员的数据,也可以同时在一个图中看所有球员的数据。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值