ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【matplotlib 实战】--柱状图 [打印本页]

作者: 乌市泽哥    时间: 2023-10-16 05:42
标题: 【matplotlib 实战】--柱状图
柱状图,是一种使用矩形条,对不同类别进行数值比较的统计图表。
在柱状图上,分类变量的每个实体都被表示为一个矩形(通俗讲即为“柱子”),而数值则决定了柱子的高度。
1. 主要元素

柱状图是一种用长方形柱子表示数据的图表。
它包含三个主要元素:

2. 适用的场景

柱状图适用于以下分析场景:
3. 不适用的场景

柱状图不适用于以下分析场景:
4. 分析实战

这次选用王者荣耀2023年KPL春季赛战队数据:https://databook.top/wzry/2023-spring
4.1. 数据来源
  1. fp = "d:/share/league-2023春季赛.csv"
  2. df = pd.read_csv(fp)
  3. df.loc[:, ["排名", "战队", "比赛场次", "胜场"]]
复制代码

4.2. 数据清理

本次实战用柱状图展示前6名的比赛场次和胜场,也就是每个战队有2个柱子。
  1. df.loc[:5, ["排名", "战队", "比赛场次", "胜场"]]
复制代码

4.3. 分析结果可视化
  1. data = df.loc[:5, ["排名", "战队", "比赛场次", "胜场"]]
  2. with plt.style.context("seaborn-v0_8"):
  3.     fig = plt.figure()
  4.     ax = fig.add_axes([0.1, 0.1, 0.8, 0.8])
  5.     teams = data["战队"].tolist()   
  6.     games = {
  7.         "比赛场次": data["比赛场次"].tolist(),
  8.         "胜场": data["胜场"].tolist(),
  9.     }
  10.     width = 0.25
  11.     multiplier = 0
  12.     x = np.arange(len(teams))
  13.     for name, vals in games.items():
  14.         offset = width*multiplier
  15.         rects = ax.bar(x+offset, vals, width, label=name)
  16.         ax.bar_label(rects, padding=3)
  17.         multiplier+=1
  18.     ax.set_title("2023-KPL春季赛前六名")
  19.     ax.set_xticks(x+0.1, teams)
  20.     ax.legend(loc="upper left")
复制代码

第一名重庆狼队,比赛场次总数倒数第二,但是胜场数确实第一,胜率明显高于其他队伍,不愧是冠军队伍。
战队,选手和各个英雄的数据都已经整理好分享在上面的URL中,感兴趣的话可以自己分析看看其他数据情况。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4