开始使用免费开始使用

将可视化自动化

Matplotlib 的一大优势是可以根据输入数据自动调整。例如,即使您拿到的数据包含未知数量的类别,仍然可以创建一个为每个类别绘制柱子的柱状图。

在本练习中,您将再次可视化 2016 年夏季奥运会的奖牌获得者数据,但这一次数据集中包含未知数量的运动项目分支。数据将加载为一个名为 summer_2016_medals 的 pandas DataFrame 对象,其中包含一个名为 "Sport" 的列,指明每一行对应的运动项目分支。此外,还有一个 "Weight" 列,给出每位运动员的体重。

本练习是课程的一部分

Matplotlib 数据可视化入门

查看课程

练习说明

  • 遍历 sports 的取值,将循环变量命名为 sport
  • 在每次循环中,筛选出 "Sport" 列等于 sport 的行。
  • 在给定的 ax 对象上添加一个柱形,标签为该运动项目名称,高度为 "Weight" 列的均值,并使用标准差作为 y 轴误差线。
  • 将图像保存为文件 "sports_weights.png"

交互式实操练习

通过完成这段示例代码来试试这个练习。

fig, ax = plt.subplots()

# Loop over the different sports branches
for ____ in ____:
  # Extract the rows only for this sport
  sport_df = ____
  # Add a bar for the "Weight" mean with std y error bar
  ____

ax.set_ylabel("Weight")
ax.set_xticklabels(sports, rotation=90)

# Save the figure to file
____
编辑并运行代码